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

    pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss

    Scheduled Pinned Locked Moved OpenVPN
    33 Posts 5 Posters 6.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.
    • A
      amdreallyfast @Gertjan
      last edited by

      @gertjan

      See 2 forum messages back, it's already there.

      Are you sure? Two messages (of yours) back I see this post, and I'm not seeing a config file. Would you take a screenshot of the message (and link it if it's another forum post)?

      20128191-a5d8-4484-ad99-aa74b3173ee9-image.png

      1 Reply Last reply Reply Quote 0
      • A
        amdreallyfast @Gertjan
        last edited by amdreallyfast

        @gertjan

        I could ping google.com just fine (it connected).

        Same. The gateway is offline with 100% packet loss, and yet the Diagnostics -> Ping tool could use that VPN client to ping. This tells me that the gateway being offline with 100% packet loss is not an issue that can be checked with the Ping tool. But how can I diagnose it then?

        636f99e0-3561-4d9a-a36a-b322f010052d-image.png

        8ec0430c-d08c-4426-9fb7-a9f54c50ff79-image.png

        1 Reply Last reply Reply Quote 0
        • GertjanG
          Gertjan @amdreallyfast
          last edited by Gertjan

          @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

          And I say "maybe" because ExpressVPN was apparently able to create .ovpn files

          Expr*ssVP always exported 'ovpn' files.
          These are just 'plain text' files, filled with process command line options that the process openvpn understands.
          pfSense 2.5.2 uses the same format and extension 'internally'.
          That is because pfSense is just an OS (sort of), with a nice GUI, and for the rest it uses the same processes (binary programs) as all the other MAC based / Window based / FreeBSD based / Lines based systems.

          Dono what pfSense 2.4.5 did, that's to far in the past for me.

          @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

          Did you have to install a specific package in order to export the config file?

          Exporting what to what ?
          To export a 'setup' (config opvn file + binaries) or just the opvn file from an OpenVPN Access server (server !!) then you need this

          4c173922-bc35-4da5-8ad1-dd9e18079a28-image.png

          package.
          See the pfSense manual or one of a thousands of OpenVPN video's, book, whatever.

          @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

          Are you sure? Two messages (of yours) back I see this post, and I'm not seeing a config file. Would you take a screenshot of the message (and link it if it's another forum post)?

          Here :

          123afb38-9dfc-48be-872e-d2a90cb82571-image.png

          That an image from this thread.
          You can't see it ?

          @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

          This tells me that the gateway being offline with 100% packet loss is not an issue that can be checked with the Ping tool. But how can I diagnose it then?

          Because some one - in your case 10.173.0.137 - doesn't answer to 'ping' this doesn't mean the gateway is offline.
          What this implies is :
          The path to host 10.173.0.137 doesn't exist
          or
          It doesn't reply to ping.
          or ....

          When I empty this field :
          1d22d118-a14f-4c76-808d-40ae6274d3cb-image.png

          the pfSense montoring system will auto choose an IP, like your "10.173.0.137".

          And I see the same thing : no ping replies. So it says 'offline'. Or, like you, I can ping 'google' just fine.
          That why I fill in a IP that I "have /own / use" and that is close to the Exprss VPN exit WAN IP : I have a dedicated server near by. Or you could use what everybody does : use 8.8.8.8 as a monitoring IP.
          And your Express
          VPN is now (nope, this should be : "looks like") on-line.

          No "help me" PM's please. Use the forum, the community will thank you.
          Edit : and where are the logs ??

          A 1 Reply Last reply Reply Quote 0
          • A
            amdreallyfast @Gertjan
            last edited by amdreallyfast

            @gertjan

            Expr*ssVP always exported 'ovpn' files.

            ...Then why can't I? This is weird. I previously mentioned that I've tried SF, LA, and DC, so I tried turning on all their VPN clients and interfaces, wondering if that might cause it to create a client1 folder to separate the three clients. Nope. My ... folder now looks like this. I don't know why OpenVPN is not creating .ovpn files. Any ideas?

            9ef2f0df-85c8-4801-b6f0-7b11506d6f29-image.png

            That an image from this thread.
            You can't see it ?

            Oh. That's your file? I was looking for a file attachment (as opposed to copy-pasted values), but now I have questions about this (see next question).

            I had to add these missing :
            <several lines of custom options>
            Now my config.opvn file looks like this :
            <more lines of custom options>

            Which one is your file? You said that you had to add some values, and then you say, "my config.ovpn file looks like this" and you show a list of custom options that does not include the ones that you just said you had to add. Now I'm confused about what your file looks like. Are you sure that's the entirety of the .ovpn file and that the file does not include the items that you had just added?

            When I empty this field :
            <screenshot of Monitor IP>
            the pfSense montoring system will auto choose an IP, like your "10.173.0.137".
            And I see the same thing : no ping replies. So it says 'offline'.

            I don't think that we're seeing the same thing. The Monitor IP field is blank for all three of my VPN client configurations (SF, LA, DC), and all three of them do show ping replies while the gateway is offline. Please explain. Are you saying that I should leave Monitor IP blank or that I should not leave it blank?

            GertjanG 1 Reply Last reply Reply Quote 0
            • GertjanG
              Gertjan @amdreallyfast
              last edited by

              @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

              Then why can't I?

              Because you strugle with the wrong questions ;)

              There is no such thing as exporting a "OpenVPN client" config file.

              A OpenVPN server installation you have set up, benefits from the pfSense "openvpn-client-export" package. The file you exports comes from the OpenVPN (server parameters) and are used by the future OpenVPN clients, so they can access the (your) OpenVPN server for remote access.

              Your subject is all about the OpenVPN client set up.
              The OpenVPN server - the provider, in this case - is ExpressVPN.
              So it's Express VPN that shares a 'config file' with you, what I call the opvn config file. You downloaded it.
              This file has to be used as a guide line to fill in the pfSense GUI client page.
              Currently, pfSense does not offer a no way to 'import' the file you got from ExpessVPN.

              Now you understand (bitter) why I want you to look at the openvpn client config file that pfSense GUI has created with it's GUI.
              This file has to resemble as close as possible as the file you obtained from ExpressVPN.

              64ab6c69-743f-4087-877f-d4137324c012-image.png

              The
              Server
              Client specific overrides
              Wizard
              Client Export
              Shared key Export

              are related to the OpenVPN server.

              The OpenVPN client has only one page : the one that's underlined in my image.

              An important aspect is also : the GUI can only handle a subset of the possible options or settings. A GUI is useful for enforcing 'illegal' option combinations.

              Got it ?! ;)

              Side note : it would be nice to have the possibility to import a server side generated file, so you can set up the client easely.
              But there is a thing : settings are version specific. They change all the time.
              "openvpn" as a program has close to one thousand settings (options and possible combination of options combined - it's close to impossible to write a GUI to handle them all.

              Big (server type) apps, like apache2, nginx, postfix and bind (named) can not be set up using a GUI.
              You have to fall back to the classic 'confg files' as the shear number of combinations of settings is just daunting.

              Btw : the last part is totally IMHO.

              No "help me" PM's please. Use the forum, the community will thank you.
              Edit : and where are the logs ??

              A 1 Reply Last reply Reply Quote 0
              • A
                amdreallyfast @Gertjan
                last edited by

                @gertjan

                Because you strugle with the wrong questions ;)

                The curse of learning. Thanks for bearing with me through this. Books and tutorials can't correct me when I understand a term badly, but you can. Thanks :).

                Now you understand (bitter) why I want you to look at the openvpn client config file that pfSense GUI has created with it's GUI.
                This file has to resemble as close as possible as the file you obtained from ExpressVPN.

                Alright, so how do I get "the openvpn client config file that pfSense GUI has created with it's GUI"? You walked me through sftp, but that showed that I didn't have a .ovpn file at all. Is there a way to get this .ovpn file through the GUI?

                It sounds like you're looking for the Client Specific Overrides. Are you sure? Mine are blank. I have done anything here.

                b2807dc0-7c75-45fe-a70f-5e3598f30397-image.png

                GertjanG 1 Reply Last reply Reply Quote 0
                • GertjanG
                  Gertjan @amdreallyfast
                  last edited by Gertjan

                  @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

                  It sounds like you're looking for the Client Specific Overrides

                  A point for you !

                  I meant :

                  544fd521-dcb5-45c1-b7cd-940431327b2f-image.png

                  All the other menu options are 'server' related.

                  edit :
                  I restarted reading you first post (see above).
                  I decided to enter exactly what you've mentioned.
                  One exception : I removed my password.

                  https://www.test-domaine.fr/VPN-Client.png

                  Compare this huge image with your settings.
                  Double check for differences.
                  ( edit : I found a difference : my verbosity (log) level is 3 - level 10 is far to detailed, create hundreds of entries a second. Leaving it 10 or 3 has no other side effect )

                  With these settings :

                  2ae4a577-70ab-4960-92bc-2e7954effaa3-image.png

                  4eba0f7a-bdc1-4bc9-a69f-eb910e0c55fc-image.png

                  4b49dab3-cd45-4281-ac74-a5ddfddd8597-image.png

                  I monitored 8.8.8.8 to check the VPN-Client connection - RTT is a bit high as I'm based in France, St Jose in the US is not really close.

                  All I had to to to make the connection works, was switching from :

                  cdab1de9-d54e-4bd2-8fca-ef7751e8af32-image.png

                  "automatic mode" to "hybrid mode" and save.
                  I'm now connected the entire company over Expr*ssVPN ...... I wasn't expecting this, as I wanted to focus on making the connection work first, and then go for the outbound natting.

                  I didn't even add a 'policy' firewall rule on my LAN interface to make the connection work.
                  It's not activated :

                  91bcfbda-6fd8-4b13-989a-6965bda5b703-image.png

                  So, first things first : Make your connection work.

                  Btw : this is the file the OpenVPN client is using right now :

                  /var/etc/openvpn/client2/config.ovpn

                  dev ovpnc2
                  verb 3
                  dev-type tun
                  dev-node /dev/tun2
                  writepid /var/run/openvpn_client2.pid
                  #user nobody
                  #group nobody
                  script-security 3
                  daemon
                  keepalive 10 60
                  ping-timer-rem
                  persist-tun
                  persist-key
                  proto udp4
                  auth SHA512
                  up /usr/local/sbin/ovpn-linkup
                  down /usr/local/sbin/ovpn-linkdown
                  local 192.168.10.3
                  tls-client
                  client
                  lport 0
                  management /var/etc/openvpn/client2/sock unix
                  remote usa-sanfrancisco-ca-version-2.expressnetw.com 1195 udp4
                  auth-user-pass /var/etc/openvpn/client2/up
                  auth-retry nointeract
                  capath /var/etc/openvpn/client2/ca
                  cert /var/etc/openvpn/client2/cert 
                  key /var/etc/openvpn/client2/key 
                  tls-auth /var/etc/openvpn/client2/tls-auth 1
                  data-ciphers AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305:AES-256-CBC
                  data-ciphers-fallback AES-256-CBC
                  allow-compression asym
                  comp-lzo adaptive
                  resolv-retry infinite
                  fast-io
                  sndbuf 524288
                  rcvbuf 524288
                  fast-io
                  
                  persist-key
                  
                  persist-tun
                  
                  remote-random
                  
                  pull
                  
                  comp-lzo
                  
                  tls-client
                  
                  verify-x509-name Server name-prefix
                  
                  remote-cert-tls server
                  
                  key-direction 1
                  
                  route-method exe
                  
                  route-delay 2
                  
                  tun-mtu 1500
                  
                  fragment 1300
                  
                  mssfix 1450
                  
                  verb 3
                  
                  sndbuf 524288
                  
                  rcvbuf 524288
                  

                  You can clearly see de double spaces lines at the bottom, some of them are present twice in the config file.
                  This is an issue for later, because, with these settings, it works.

                  I'm using :

                  a9aff018-b668-486d-b7b8-310c436b7068-image.png

                  No "help me" PM's please. Use the forum, the community will thank you.
                  Edit : and where are the logs ??

                  A 2 Replies Last reply Reply Quote 0
                  • A
                    amdreallyfast @Gertjan
                    last edited by

                    @gertjan

                    That's a real big screenshot. Kudos on spending the time to piece that monstrosity together.

                    Noticed some differences:

                    1. The ExpressVPN setup instructions for 2.4.5 say to leave NCP (Negotiable Cryptographic Parameters) blank, but in your 2.5.2 configuration you have it checked (now called "Data Encryption Negotiation").
                      0bc085ce-9297-413d-be96-af45dfb584eb-image.png

                    2. The ExpressVPN setup instructions for 2.4.5 say to check "Don't pull routes", but you haven't.
                      a497e330-01b9-4c70-a998-a07ce5d71022-image.png

                    But I followed along anyway and replicated your settings. And the gateways are still offline. I haven't adjusted the firewall rules yet. I'm still trying to get these gateways online.

                    Note: Prior to making these screenshots, I shortened the names of the VPN clients and their interfaces, so they'll appear a little different than in prior screenshots, but they're still the same ones.

                    • VPN clients online
                      010be3f9-95c8-4c2d-a5ba-e052ae869e1f-image.png

                    • Gateways offline
                      b8cefe0a-29d0-4a4f-b41b-00943eae4320-image.png

                    • Using ExpressVPN's IP address checker:
                      17bc4a9d-1e28-427d-8897-b1f507c54835-image.png

                    • Interface settings
                      a92b3af8-61a1-424e-ae5b-9ab611648da1-image.png

                    • Gateway settings
                      a6c68e55-6f01-4093-8c96-45e76ac18487-image.png

                    • Client settings
                      a80757f7-e61d-46f5-85c4-70c6398c9c69-image.png

                    GertjanG 1 Reply Last reply Reply Quote 0
                    • A
                      amdreallyfast @Gertjan
                      last edited by amdreallyfast

                      @gertjan

                      At this point I'm thinking that the only way forward is for a network expert who's familiar with PfSense and OpenVPN to sit down at my computer and poke around until they can figure out what's going on. Whatever my problem is, it's not normal. I'm not a network expert, and I don't know how to diagnose this. I've replicate other peoples' working settings, and it isn't working on my end. Here's some more diagnostic info; does it give you any ideas about where to start diagnosing next?

                      • I can tell from a basic Wireshark scan of my network traffic that TCP failure and retransmission is not uncommon, and PfSense's Status -> System Logs -> Gateways shows me that communication with the gateways is frequently timing out. All gateways are timing out, including the WAN, which is what I'm currently using to get online and talk with you.

                        These are all from this morning:
                        647483bf-5724-4e50-8eca-da88648e96f6-image.png

                      • It's rather frequent that I try to load a web page, wait several seconds, the page fails to load and the browser says that it can't find the page, and then it automatically retries and succeeds (sometimes needs to retry twice). I don't know what is causing this frequent failure, or if there's anything I can do about it. I've got a 100Mbps internet connection over cable that is usually stable and reliable once connection is actually established (ex: a long download or a big YouTube video doesn't fail once it's started). It shouldn't take 5-10sec to load a google search. The failures (when they happen) only occur when initially loading a page. If it were a random hardware failure (circuitry going bad, loose cable, etc.), I'd expect random disconnects during downloads and streaming large video, but I'm not seeing that.

                        I've mentioned before that when I use the ExpressVPN desktop app to make a VPN connection, all those connection issues for my PC disappear. Web pages load quickly 100% of the time, no timeouts, no lost connections. That makes me wonder if there's some sort of packet monitoring and sniffing going on after the traffic leaves my network that either slows the transmission enough to time out or stops it entirely. Why would making an encrypted tunnel to ExpressVPN's servers magically make the disconnects go away?

                      • My connection is this: Cable -> modem -> router (mini PC running PfSense 2.4.5) -> TP-Link Archer A7 (wifi router/switch configured as access point only) -> PC.

                        Here's the TP-Link Archer A7 set in AP mode
                        1a1bb1ea-a515-40cf-a0fc-6b5f0a5b5eb4-image.png

                      • The TP-Link Archer A7's DHCP Server is set to Auto, but the DHCP client list is empty, so I'm guessing that it was smart enough to not try to be a DHCP server when in AP mode. Should I explicitly turn that off?
                        d77612e7-494a-4d2c-9b2f-6a32f213a304-image.png

                      Does this info give you any ideas of where I can start diagnosing next?

                      Any ideas of network diagnostic tools that can help me track down where the traffic is disappearing and why?

                      1 Reply Last reply Reply Quote 0
                      • GertjanG
                        Gertjan @amdreallyfast
                        last edited by Gertjan

                        @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

                        but in your 2.5.2 configuration you have it checked (now called "Data Encryption Negotiation").

                        Because (see above) :

                        Data Encryption Negotiation - <checked>

                        It's checked because "openvpn 2.5.2 needs (like mandatory) it.

                        @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

                        The ExpressVPN setup instructions for 2.4.5 say to check "Don't pull routes", but you haven't.

                        ?? Correct - both are non checked.
                        ( probably because the server (ExpressVPN) pushed them ).

                        About the images that show the red 'offine' : use 8.8.8.8 as the monitoring IP : the IP's used (your IPs) do not reply to ping, so there will be a red "offline, even when the connection is online.
                        This one :

                        77a8207c-c183-4ca3-a0da-9add9e43472d-image.png

                        Can't find this one in your images ?

                        e2eca7cf-738d-4163-ae57-69efe83117f7-image.png

                        You have pfSense 2.5.2, right ? I can't help you with the old OpenVPN 2.4.8 used by pfSense 2.4.5p1.
                        The OpenVPN versions used are different. OpenVPN went from 2.4.8 to 2.5.2 Several options changed ( and that is why this subject exists ). Some minor parameter changes were needed to make it work again.

                        Btw : your AP should be an AP. Nothing else. Don't leave the DHCP server on Auto, shut it down ( off ). ( because : scenario : powerdown -> powerup : IF the AP boots up earlier as pfSense, the AP server will activate - moments later the sense DHCP servers activates : You've created a whole new issue)
                        The AP is not part of the issue right now. And if doubt, remove the AP from the equation - use a straight cable, as cables are easy to debug ;)

                        No "help me" PM's please. Use the forum, the community will thank you.
                        Edit : and where are the logs ??

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          amdreallyfast @Gertjan
                          last edited by

                          @gertjan

                          About the images that show the red 'offine' : use 8.8.8.8 as the monitoring IP

                          Done.

                          BTW, the WAN's "Monitor IP" is set to itself. Is that bad? I didn't set it as such, so it must be the default.

                          2194cf95-e008-4990-b1ef-ddbb300aff10-image.png

                          You have pfSense 2.5.2, right ?

                          I downgraded to 2.4.5 (via format -> fresh install) because I've been trying to replicate the conditions that the ExpressVPN setup instructions expect. If I update to 2.5.2, then I won't be able to go back, but since you were able to get ExpressVPN working on 2.5.2, then I hope that the upgrade shouldn't be an issue. I'll do that tonight.

                          Btw : your AP should be an AP. Nothing else.

                          Done. Turned it off. At least that's out of the way.

                          BTW, I'm hesitant to remove the AP entirely because then I won't have wireless. My router box only has to two ethernet ports. I can't run my PC to the router and still have wireless internet. If the issues continue to persist, I'll try doing it. In hindsight, I should have purchased a mini PC with 4 network ports, but I didn't think of that at the time.

                          1 Reply Last reply Reply Quote 0
                          • A
                            amdreallyfast
                            last edited by

                            @gertjan

                            Well, after upgrading to 2.5.2 and explicitly turning my TP-Link DHCP server off (from Auto) and restarting everything, the gateways are now in indefinite "Pending" mode. I'm out of ideas. Yourself?

                            8bb047f9-75ba-45e8-ae18-55ca64ea21e6-image.png

                            GertjanG 1 Reply Last reply Reply Quote 0
                            • GertjanG
                              Gertjan @amdreallyfast
                              last edited by

                              @amdreallyfast

                              How many Expr*ssVPN clients have you running ?

                              f028b6cc-213d-4e93-9247-8327fc8f6e79-image.png

                              Concentrate one one, then add others if needed.
                              I know Expr**sVPN offers 5 ( ?) simulations connections - dono if they accept 5 from the same device.

                              Now you have 2.5.2, get your client opvn file and post it here. I'll compare yours with mine.

                              No "help me" PM's please. Use the forum, the community will thank you.
                              Edit : and where are the logs ??

                              A 1 Reply Last reply Reply Quote 0
                              • A
                                amdreallyfast @Gertjan
                                last edited by

                                @gertjan

                                Alright, I'll disable two of the interfaces and the OpenVPN clients that use them.

                                While waiting on the gateways to work themselves out, here's my config.ovpn file, unaltered in any way. It looks like upgrading to 2.5.2 changed how the config files were stored, and now I have the file structure that you had expected in prior posts.

                                b8097447-a201-4675-9ae9-d0e344d9eba4-image.png

                                GertjanG 1 Reply Last reply Reply Quote 0
                                • GertjanG
                                  Gertjan @amdreallyfast
                                  last edited by

                                  @amdreallyfast

                                  I compared you opvn file with mine.
                                  There is 1 ( one ) difference :
                                  local 192.168.10.3
                                  for me, as me WAN IP is 192.168.10.3 - I have an up stream ISP router.
                                  You have a 'real' WAN IP 68.100.115.1x9 - That must be the IP of your WAN interface.

                                  My opvn file :

                                  dev ovpnc2
                                  verb 3
                                  dev-type tun
                                  dev-node /dev/tun2
                                  writepid /var/run/openvpn_client2.pid
                                  #user nobody
                                  #group nobody
                                  script-security 3
                                  daemon
                                  keepalive 10 60
                                  ping-timer-rem
                                  persist-tun
                                  persist-key
                                  proto udp4
                                  auth SHA512
                                  up /usr/local/sbin/ovpn-linkup
                                  down /usr/local/sbin/ovpn-linkdown
                                  local 192.168.10.3
                                  tls-client
                                  client
                                  lport 0
                                  management /var/etc/openvpn/client2/sock unix
                                  remote usa-sanfrancisco-ca-version-2.expressnetw.com 1195 udp4
                                  auth-user-pass /var/etc/openvpn/client2/up
                                  auth-retry nointeract
                                  capath /var/etc/openvpn/client2/ca
                                  cert /var/etc/openvpn/client2/cert 
                                  key /var/etc/openvpn/client2/key 
                                  tls-auth /var/etc/openvpn/client2/tls-auth 1
                                  data-ciphers AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305:AES-256-CBC
                                  data-ciphers-fallback AES-256-CBC
                                  allow-compression asym
                                  comp-lzo adaptive
                                  resolv-retry infinite
                                  fast-io
                                  sndbuf 524288
                                  rcvbuf 524288
                                  fast-io
                                  
                                  remote-random
                                  pull
                                  comp-lzo
                                  verify-x509-name Server name-prefix
                                  remote-cert-tls server
                                  key-direction 1
                                  route-method exe
                                  route-delay 2
                                  tun-mtu 1500
                                  fragment 1300
                                  mssfix 1450
                                  

                                  5b7a57e5-6378-475d-a5d6-e9b7c826dcca-image.png

                                  You'll see :
                                  comp-lzo adaptive
                                  and then
                                  comp-lzo
                                  in the custom option box.

                                  The latter cancels / modifies the first, I guess.

                                  Do not forget to add the ";".

                                  Now, when I remove the check from 'disable' at the top, and "save" I have these logs :
                                  Logs are in reverse order : the connection sequence starts at the bottom :

                                  2022-01-11 08:40:16.087396+01:00 	openvpn 	73688 	Initialization Sequence Completed
                                  2022-01-11 08:40:16.087382+01:00 	openvpn 	73688 	WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
                                  2022-01-11 08:40:16.086402+01:00 	openvpn 	73688 	/sbin/route add -net 10.46.0.1 10.46.0.133 255.255.255.255
                                  2022-01-11 08:40:16.085418+01:00 	openvpn 	73688 	/sbin/route add -net 128.0.0.0 10.46.0.133 128.0.0.0
                                  2022-01-11 08:40:16.084447+01:00 	openvpn 	73688 	/sbin/route add -net 0.0.0.0 10.46.0.133 128.0.0.0
                                  2022-01-11 08:40:16.083229+01:00 	openvpn 	73688 	/sbin/route add -net 45.38.178.184 192.168.10.1 255.255.255.255
                                  2022-01-11 08:40:14.426692+01:00 	openvpn 	73688 	/usr/local/sbin/ovpn-linkup ovpnc2 1500 1557 10.46.0.134 10.46.0.133 init
                                  2022-01-11 08:40:14.421989+01:00 	openvpn 	73688 	/sbin/ifconfig ovpnc2 10.46.0.134 10.46.0.133 mtu 1500 netmask 255.255.255.255 up
                                  2022-01-11 08:40:14.421967+01:00 	openvpn 	73688 	TUN/TAP device /dev/tun2 opened
                                  2022-01-11 08:40:14.421881+01:00 	openvpn 	73688 	TUN/TAP device ovpnc2 exists previously, keep at program end
                                  2022-01-11 08:40:14.421846+01:00 	openvpn 	73688 	ROUTE_GATEWAY 192.168.10.1/255.255.255.0 IFACE=em0 HWADDR=00:15:17:77:d1:19
                                  2022-01-11 08:40:14.421717+01:00 	openvpn 	73688 	Incoming Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
                                  2022-01-11 08:40:14.421688+01:00 	openvpn 	73688 	Outgoing Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
                                  2022-01-11 08:40:14.421585+01:00 	openvpn 	73688 	Data Channel: using negotiated cipher 'AES-256-GCM'
                                  2022-01-11 08:40:14.421576+01:00 	openvpn 	73688 	OPTIONS IMPORT: data channel crypto options modified
                                  2022-01-11 08:40:14.421559+01:00 	openvpn 	73688 	OPTIONS IMPORT: adjusting link_mtu to 1629
                                  2022-01-11 08:40:14.421547+01:00 	openvpn 	73688 	OPTIONS IMPORT: peer-id set
                                  2022-01-11 08:40:14.421535+01:00 	openvpn 	73688 	OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
                                  2022-01-11 08:40:14.421524+01:00 	openvpn 	73688 	OPTIONS IMPORT: route options modified
                                  2022-01-11 08:40:14.421512+01:00 	openvpn 	73688 	OPTIONS IMPORT: --ifconfig/up options modified
                                  2022-01-11 08:40:14.421496+01:00 	openvpn 	73688 	OPTIONS IMPORT: compression parms modified
                                  2022-01-11 08:40:14.421479+01:00 	openvpn 	73688 	OPTIONS IMPORT: timers and/or timeouts modified
                                  2022-01-11 08:40:14.421389+01:00 	openvpn 	73688 	PUSH: Received control message: 'PUSH_REPLY,redirect-gateway def1,dhcp-option DNS 10.46.0.1,comp-lzo no,route 10.46.0.1,topology net30,ping 10,ping-restart 60,ifconfig 10.46.0.134 10.46.0.133,peer-id 56,cipher AES-256-GCM'
                                  2022-01-11 08:40:14.260127+01:00 	openvpn 	73688 	SENT CONTROL [Server-10448-0a]: 'PUSH_REQUEST' (status=1)
                                  2022-01-11 08:40:13.011214+01:00 	openvpn 	73688 	[Server-10448-0a] Peer Connection Initiated with [AF_INET]45.38.178.184:1195
                                  2022-01-11 08:40:13.011195+01:00 	openvpn 	73688 	Control Channel: TLSv1.3, cipher TLSv1.3 TLS_AES_256_GCM_SHA384, peer certificate: 2048 bit RSA, signature: RSA-SHA256
                                  2022-01-11 08:40:12.834914+01:00 	openvpn 	73688 	VERIFY OK: depth=0, C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10448-0a, emailAddress=support@expressvpn.com
                                  2022-01-11 08:40:12.834906+01:00 	openvpn 	73688 	VERIFY X509NAME OK: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10448-0a, emailAddress=support@expressvpn.com
                                  2022-01-11 08:40:12.834897+01:00 	openvpn 	73688 	VERIFY EKU OK
                                  2022-01-11 08:40:12.834887+01:00 	openvpn 	73688 	++ Certificate has EKU (str) TLS Web Server Authentication, expects TLS Web Server Authentication
                                  2022-01-11 08:40:12.834874+01:00 	openvpn 	73688 	Validating certificate extended key usage
                                  2022-01-11 08:40:12.834861+01:00 	openvpn 	73688 	VERIFY KU OK
                                  2022-01-11 08:40:12.834393+01:00 	openvpn 	73688 	VERIFY OK: depth=1, C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=ExpressVPN CA, emailAddress=support@expressvpn.com
                                  2022-01-11 08:40:12.834281+01:00 	openvpn 	73688 	VERIFY WARNING: depth=1, unable to get certificate CRL: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=ExpressVPN CA, emailAddress=support@expressvpn.com
                                  2022-01-11 08:40:12.834232+01:00 	openvpn 	73688 	VERIFY WARNING: depth=0, unable to get certificate CRL: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10448-0a, emailAddress=support@expressvpn.com
                                  2022-01-11 08:40:12.669575+01:00 	openvpn 	73688 	TLS: Initial packet from [AF_INET]45.38.178.184:1195, sid=afc6b917 2da3d51c
                                  2022-01-11 08:40:12.507340+01:00 	openvpn 	73688 	UDPv4 link remote: [AF_INET]45.38.178.184:1195
                                  2022-01-11 08:40:12.507290+01:00 	openvpn 	73688 	UDPv4 link local (bound): [AF_INET]192.168.10.3:0
                                  2022-01-11 08:40:12.507235+01:00 	openvpn 	73688 	Socket Buffers: R=[42080->524288] S=[57344->524288]
                                  2022-01-11 08:40:12.507137+01:00 	openvpn 	73688 	TCP/UDP: Preserving recently used remote address: [AF_INET]45.38.178.184:1195
                                  2022-01-11 08:40:12.428036+01:00 	openvpn 	73688 	Incoming Control Channel Authentication: Using 512 bit message hash 'SHA512' for HMAC authentication
                                  2022-01-11 08:40:12.428014+01:00 	openvpn 	73688 	Outgoing Control Channel Authentication: Using 512 bit message hash 'SHA512' for HMAC authentication
                                  2022-01-11 08:40:12.427759+01:00 	openvpn 	73688 	WARNING: experimental option --capath /var/etc/openvpn/client2/ca
                                  2022-01-11 08:40:12.426711+01:00 	openvpn 	73688 	NOTE: the current --script-security setting may allow this configuration to call user-defined scripts
                                  2022-01-11 08:40:12.426487+01:00 	openvpn 	73688 	MANAGEMENT: unix domain socket listening on /var/etc/openvpn/client2/sock
                                  2022-01-11 08:40:12.425588+01:00 	openvpn 	73485 	library versions: OpenSSL 1.1.1k-freebsd 25 Mar 2021, LZO 2.10
                                  2022-01-11 08:40:12.425575+01:00 	openvpn 	73485 	OpenVPN 2.5.2 amd64-portbld-freebsd12.2 [SSL (OpenSSL)] [LZO] [LZ4] [MH/RECVDA] [AEAD] built on Jun 24 2021
                                  2022-01-11 08:40:12.425550+01:00 	openvpn 	73485 	WARNING: file '/var/etc/openvpn/client2/up' is group or others accessible
                                  2022-01-11 08:40:12.425218+01:00 	openvpn 	73485 	WARNING: Compression for receiving enabled. Compression has been used in the past to break encryption. Sent packets are not compressed unless "allow-compression yes" is also set.
                                  

                                  There are some warnings about "Compression" - Not important right now (?).
                                  WARNING: experimental option : nice, we want to experiment.
                                  two "VERIFY WARNING" for the CRL : we don't care.
                                  And a "WARNING: this configuration may cache" because we're lazy, so ok.

                                  d063aaaa-8a82-4885-95f6-d209b3358dd6-image.png

                                  Do you have exactly the same log lines ?
                                  ( using "verb 3" means log level 3 - the default )

                                  No "help me" PM's please. Use the forum, the community will thank you.
                                  Edit : and where are the logs ??

                                  A 1 Reply Last reply Reply Quote 0
                                  • A
                                    amdreallyfast @Gertjan
                                    last edited by

                                    @gertjan
                                    I changed my custom options to match yours, and then looked at Status -> System Logs -> OpenVPN.

                                    Noticing AUTH_FAILED. That's clearly bad.

                                    Note: This is just one AUTH_FAILED cycle. The full logs repeat this log segment many times.

                                    Jan 11 18:09:57	openvpn	56223	NOTE: the current --script-security setting may allow this configuration to call user-defined scripts
                                    Jan 11 18:09:57	openvpn	56223	Outgoing Control Channel Authentication: Using 512 bit message hash 'SHA512' for HMAC authentication
                                    Jan 11 18:09:57	openvpn	56223	Incoming Control Channel Authentication: Using 512 bit message hash 'SHA512' for HMAC authentication
                                    Jan 11 18:09:57	openvpn	56223	TCP/UDP: Preserving recently used remote address: [AF_INET]45.38.178.54:1195
                                    Jan 11 18:09:57	openvpn	56223	Socket Buffers: R=[42080->524288] S=[57344->524288]
                                    Jan 11 18:09:57	openvpn	56223	UDPv4 link local (bound): [AF_INET]68.100.115.149:0
                                    Jan 11 18:09:57	openvpn	56223	UDPv4 link remote: [AF_INET]45.38.178.54:1195
                                    Jan 11 18:09:57	openvpn	56223	TLS: Initial packet from [AF_INET]45.38.178.54:1195, sid=6cbc8ab5 ec9e0d58
                                    Jan 11 18:09:57	openvpn	56223	VERIFY WARNING: depth=0, unable to get certificate CRL: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10457-0a, emailAddress=support@expressvpn.com
                                    Jan 11 18:09:57	openvpn	56223	VERIFY WARNING: depth=1, unable to get certificate CRL: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=ExpressVPN CA, emailAddress=support@expressvpn.com
                                    Jan 11 18:09:57	openvpn	56223	VERIFY OK: depth=1, C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=ExpressVPN CA, emailAddress=support@expressvpn.com
                                    Jan 11 18:09:57	openvpn	56223	VERIFY KU OK
                                    Jan 11 18:09:57	openvpn	56223	Validating certificate extended key usage
                                    Jan 11 18:09:57	openvpn	56223	++ Certificate has EKU (str) TLS Web Server Authentication, expects TLS Web Server Authentication
                                    Jan 11 18:09:57	openvpn	56223	VERIFY EKU OK
                                    Jan 11 18:09:57	openvpn	56223	VERIFY X509NAME OK: C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10457-0a, emailAddress=support@expressvpn.com
                                    Jan 11 18:09:57	openvpn	56223	VERIFY OK: depth=0, C=VG, ST=BVI, O=ExpressVPN, OU=ExpressVPN, CN=Server-10457-0a, emailAddress=support@expressvpn.com
                                    Jan 11 18:09:57	openvpn	56223	Control Channel: TLSv1.3, cipher TLSv1.3 TLS_AES_256_GCM_SHA384, peer certificate: 2048 bit RSA, signature: RSA-SHA256
                                    Jan 11 18:09:57	openvpn	56223	[Server-10457-0a] Peer Connection Initiated with [AF_INET]45.38.178.54:1195
                                    Jan 11 18:09:58	openvpn	56223	SENT CONTROL [Server-10457-0a]: 'PUSH_REQUEST' (status=1)
                                    Jan 11 18:09:58	openvpn	56223	AUTH: Received control message: AUTH_FAILED
                                    Jan 11 18:09:58	openvpn	56223	SIGUSR1[soft,auth-failure] received, process restarting
                                    Jan 11 18:09:58	openvpn	56223	Restart pause, 10 second(s)
                                    

                                    And the gateway is still pending:

                                    65518b30-de87-4f7a-978c-1511d46ebc36-image.png

                                    GertjanG 1 Reply Last reply Reply Quote 0
                                    • GertjanG
                                      Gertjan @amdreallyfast
                                      last edited by Gertjan

                                      @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

                                      This is just one AUTH_FAILED cycle

                                      That's a matter of copying correctly your credentials.
                                      Was this message there all the time ?
                                      This is the most logical reason the connection doesn't come up : your bank site won't let you in neither with wrong credentials..

                                      This issue wasn't worth mentioning, as it is easy to correct.

                                      4c4639a2-52c3-4f31-9146-5465a0aff11a-image.png

                                      edit : in the folder where you found the opvn client file, you will also find a file called 'up'.
                                      Open it ;)
                                      This explains this setting :

                                      auth-user-pass /var/etc/openvpn/client1/up
                                      

                                      @amdreallyfast said in pfsense 2.5.2: ExpressVPN connection working by gateway has 100% packet loss:

                                      And the gateway is still pending

                                      When the login is transmitted, and it's wrong, the "PUSH_REQUEST" will not receive the route, gateway, IP etc but an error message : you saw it.
                                      The gateway isn't reachable, as you failed authentication.
                                      When the "auth" went well, you receive a

                                      PUSH: Received control message: 'PUSH_REPLY,redirect-gateway def1,dhcp-option DNS 10.46.0.1,comp-lzo no,route 10.46.0.1,topology net30,ping 10,ping-restart 60,ifconfig 10.46.0.134 10.46.0.133,peer-id 56,cipher AES-256-GCM'
                                      2022-01-11 08:40:14.260127+01:00 openvpn 73688 SENT CONTROL [Server-10448-0a]: 'PUSH_REQUEST' (status=1)

                                      and as you can see, the gateway, amongst others, is in there. pfSense uses all this info to set up everything.

                                      No "help me" PM's please. Use the forum, the community will thank you.
                                      Edit : and where are the logs ??

                                      A 1 Reply Last reply Reply Quote 0
                                      • A
                                        amdreallyfast @Gertjan
                                        last edited by

                                        @gertjan

                                        Looks like it's working now. The auth problem was caused by an old username/password that went bad when the subscription recently expired. I just renewed it, entered the new username/password, and now the gateway is online.

                                        0617125e-4e79-436f-a939-296a9cb06aa4-image.png

                                        Then I enabled the firewall rules and firewall NAT -> Outbound routing rules, and it looks like its my San Francisco VPN is now working and routing traffic correctly. I'm writing this post while my router is connected to the new VPN.

                                        5d676870-6207-4daf-8fc1-23b8197a39a0-image.png

                                        It looks like your settings worked for me too. I remember deviating from the ExpressVPN setup instructions in the VPN client setup by checking Enable NCP (2.4.5; on 2.5.2 it's called "Enable Data Encryption Negotiation") and by unchecking Don't pull routes", and by unchecking both Interfaces -> <vpn interface name> -> Reserved Networks -> Block private networks and loopback addresses and Block bogon networks. And I think that I edited the manual custom configuration options a bit so that they match yours. Current settings.

                                        remote-random;
                                        pull;
                                        comp-lzo;
                                        verify-x509-name Server name-prefix;
                                        remote-cert-tls server;
                                        key-direction 1;
                                        route-method exe;
                                        route-delay 2;
                                        tun-mtu 1500;
                                        fragment 1300;
                                        mssfix 1450;
                                        verb 3;
                                        sndbuf 524288;
                                        rcvbuf 524288;
                                        

                                        Thanks for all the patience. Next I'll need to figure out custom routing rules for connections that don't like the VPN. Some places block it and I'll need to make exceptions for those.

                                        GertjanG 1 Reply Last reply Reply Quote 1
                                        • GertjanG
                                          Gertjan @amdreallyfast
                                          last edited by

                                          @amdreallyfast
                                          Sit back, and think with me :
                                          What is different between these 'famous' Exprr*VPN instructions, and the ones needed to make VPN works with 2.5.2.
                                          You'll agree with me : it's not much. Re see the post about this subject I made several month ( ? ) ago.
                                          I'll have a look at it this weekend.

                                          No "help me" PM's please. Use the forum, the community will thank you.
                                          Edit : and where are the logs ??

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            amdreallyfast @Gertjan
                                            last edited by amdreallyfast

                                            @gertjan

                                            You'll agree with me : it's not much.

                                            True. The problem is that network software rarely settles for "close enough". Figuring out exactly what I needed to change was the rough part.

                                            And now, curiously enough, the docs pages for pfsense won't load. It's like my firewall (or maybe theirs) is blocking me. Back to the non-VPN configuration while I try to figure out how to pass traffic for certain websites through the non-VPN connection.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.