• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

OpenVPN (2.4.x?) fails with pfSense 2.4.0 if CRL is specified

Scheduled Pinned Locked Moved OpenVPN
6 Posts 3 Posters 2.5k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K
    klou
    last edited by Oct 19, 2017, 6:38 AM

    I just did an upgrade from 2.3.4p1 to 2.4.0, and OpenVPN now refuses to connect.

    My OpenVPN logs show the following:

    
    Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS Error: TLS handshake failed
    Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS Error: TLS object -> incoming plaintext read error
    Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS_ERROR: BIO read tls_read_plaintext error
    Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 OpenSSL: error:14089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
    Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 VERIFY ERROR: depth=0, error=CRL signature failure: C= <cert info="">Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS: Initial packet from [AF_INET]xxx.yyy.zzz.ip:64615, sid=291e8194 e929c34b</cert> 
    

    A bit of googling on the OpenSSL error pointed me to OPNsense : https://github.com/opnsense/core/issues/1373

    The bottom line:  Changing the Certificate Revocation List to NONE (where I had one specified on the OpenVPN Server) allowed me to connect.

    Anybody else see this?

    1 Reply Last reply Reply Quote 0
    • J
      jimp Rebel Alliance Developer Netgate
      last edited by Oct 19, 2017, 2:27 PM

      Is that a CRL you made in the pfSense GUI or one you imported externally?

      OpenVPN 2.4 changed CRL parsing so they are verified directly by OpenSSL and not OpenVPN so it's entirely possible that it's being more strict about some aspect of the CRL.

      It almost sounds like the CRL wasn't made from the same CA as the OpenVPN server though.

      Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

      Need help fast? Netgate Global Support!

      Do not Chat/PM for help!

      1 Reply Last reply Reply Quote 0
      • K
        klou
        last edited by Oct 19, 2017, 4:49 PM

        To be more specific, pfSense is the OpenVPN server, I'm using a mobile client (Tunnelblick).

        It's the local CRL, referencing the same (local) CA as the OpenVPN server.  Both of these were from the pfSense GUI (after Heartbleed).

        1 Reply Last reply Reply Quote 0
        • K
          klou
          last edited by Oct 20, 2017, 5:16 PM

          Could be related to this:

          NOTE: OpenVPN 2.4 handles CRL verification differently than previous versions, passing through validation to the library rather than handling it internally. This can cause some certificates to fail validation that may have passed previously. In particular, if a certificate is removed from a CRL, it may still fail validation until all copies of the CRL have been rewritten.

          1 Reply Last reply Reply Quote 0
          • K
            kolpinkb
            last edited by Oct 25, 2017, 2:28 PM

            @klou:

            I just did an upgrade from 2.3.4p1 to 2.4.0, and OpenVPN now refuses to connect.

            My OpenVPN logs show the following:

            
            Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS Error: TLS handshake failed
            Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS Error: TLS object -> incoming plaintext read error
            Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS_ERROR: BIO read tls_read_plaintext error
            Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 OpenSSL: error:14089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
            Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 VERIFY ERROR: depth=0, error=CRL signature failure: C= <cert info="">Oct 18 23:07:23    openvpn    14312    xxx.yyy.zzz.ip:64615 TLS: Initial packet from [AF_INET]xxx.yyy.zzz.ip:64615, sid=291e8194 e929c34b</cert> 
            

            A bit of googling on the OpenSSL error pointed me to OPNsense : https://github.com/opnsense/core/issues/1373

            The bottom line:  Changing the Certificate Revocation List to NONE (where I had one specified on the OpenVPN Server) allowed me to connect.

            Anybody else see this?

            Seeing it here on 2.4.0 as well.  Haven't tested 2.4.1 yet.

            1 Reply Last reply Reply Quote 0
            • J
              jimp Rebel Alliance Developer Netgate
              last edited by Nov 10, 2017, 7:56 PM

              At least on 2.4.2, I can't find any problems.

              No CRL = Connects
              Empty CRL = Connects
              Cert in CRL = Doesn't connect (and it shouldn't)
              Using a different cert not in the CRL = Still connects.

              Maybe it got fixed along the way with something else, but it doesn't seem to be an issue on 2.4.2.

              Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

              Need help fast? Netgate Global Support!

              Do not Chat/PM for help!

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                This community forum collects and processes your personal information.
                consent.not_received