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

    Valid configuration for IKEv2 VPN for iOS and OSX

    Scheduled Pinned Locked Moved IPsec
    68 Posts 33 Posters 53.2k 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.
    • N
      nicolai
      last edited by

      Can anyone confirm this is still working on iOS 11.0.3 and pFsense 2.2.6-RELEASE (amd64)? I've been trying for a while and I can't make it work.

      Thanks.

      1 Reply Last reply Reply Quote 0
      • DerelictD
        Derelict LAYER 8 Netgate
        last edited by

        Seems to work OK on iOS 11.0.3. As for pfSense 2.2.6 you're on your own there. Upgrade.

        Chattanooga, Tennessee, USA
        A comprehensive network diagram is worth 10,000 words and 15 conference calls.
        DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
        Do Not Chat For Help! NO_WAN_EGRESS(TM)

        1 Reply Last reply Reply Quote 0
        • S
          SpaceBass
          last edited by

          I can confirm this works and was a huge help in troubleshooting my use case.

          Where I'm stuck is getting user-based auth to work too.

          Here's what I've determined:

          • anything with +xauth doesn't work. OSX and iOS seem to only do user/pass as EAP (makes sense) +xauth doesn't use EAP

          • EAP-MSCHAPv2 doesn't work - it seems to only authenticate against users defined in PF

          • EAP-Radius almost works for me. But apparently Apple's version of FreeRadius (2.2.9) does NOT return an MSK with the authentication payload, and IKE auth falls as a result.

          So I think I'm close to concluding that:
          MacOS Server backend (LDAP, Radius) + iOS clients + IKEv2 with user-based auth  != possible

          1 Reply Last reply Reply Quote 0
          • DerelictD
            Derelict LAYER 8 Netgate
            last edited by

            What macOS server lacks is the RADIUS bits to do EAP.

            As far as I know you can't do EAP to LDAP.

            EAP-RADIUS works to a FreeRADIUS server, just not to macOS RADIUS as it is configured. You might be able to get it to work using a FreeRADIUS server backed by macOS LDAP for username/password but I have not tried it.

            It has been a while since I tried any of this.

            Chattanooga, Tennessee, USA
            A comprehensive network diagram is worth 10,000 words and 15 conference calls.
            DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
            Do Not Chat For Help! NO_WAN_EGRESS(TM)

            1 Reply Last reply Reply Quote 0
            • S
              SpaceBass
              last edited by

              @Derelict:

              What macOS server lacks is the RADIUS bits to do EAP.

              As far as I know you can't do EAP to LDAP.

              EAP-RADIUS works to a FreeRADIUS server, just not to macOS RADIUS as it is configured. You might be able to get it to work using a FreeRADIUS server backed by macOS LDAP for username/password but I have not tried it.

              It has been a while since I tried any of this.

              Thanks Derelict,

              In my case this is macOS Server 10.12

              Makes sense that EAP can’t do ldap.

              Is there a way to do xauth agains LDAP with Apple clients? It seems Apple clients only send user credentials as an EAP auth.

              Or if I stick with EAP - I’d love to hear if anyone knows how to (re)configure macOS server’s freeradius 2.2.x to support the MSK payload

              1 Reply Last reply Reply Quote 0
              • DerelictD
                Derelict LAYER 8 Netgate
                last edited by

                The problem isn't really Apple clients, it is the macOS server backend.

                I am about ready to give up on it here.

                Chattanooga, Tennessee, USA
                A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                Do Not Chat For Help! NO_WAN_EGRESS(TM)

                1 Reply Last reply Reply Quote 0
                • I
                  imushroom
                  last edited by imushroom

                  Hey,

                  i want to reply to this old topic because I have some problems connecting.

                  When I Try to connected the message appears, that there is an authorization error.

                  Is here any way to debug the connection establishment?

                  Have to ADD:

                  I am trying this with OSX 10.14.1
                  and pFSense latest stable build

                  1 Reply Last reply Reply Quote 0
                  • I
                    imushroom
                    last edited by imushroom

                    Here something from my log... On mAc OSX is no log for ikev2 connections available.

                    Pls Someone help me.....

                    Dec 23 18:28:39 charon 12[CFG] vici client 34 disconnected
                    Dec 23 18:28:39 charon 12[CFG] vici client 34 requests: list-sas
                    Dec 23 18:28:39 charon 13[CFG] vici client 34 registered for: list-sa
                    Dec 23 18:28:39 charon 13[CFG] vici client 34 connected
                    Dec 23 18:28:35 charon 13[CFG] vici client 33 disconnected
                    Dec 23 18:28:35 charon 13[CFG] vici client 33 requests: list-sas
                    Dec 23 18:28:35 charon 12[CFG] vici client 33 registered for: list-sa
                    Dec 23 18:28:35 charon 14[CFG] vici client 33 connected
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> IKE_SA bypasslan[6] state change: CONNECTING => DESTROYING
                    Dec 23 18:28:15 charon 12[NET] <bypasslan|6> sending packet: from xxx.xxx.xxx.xx[4500] to xx.xxx.xxx.xx[2324] (80 bytes)
                    Dec 23 18:28:15 charon 12[ENC] <bypasslan|6> generating IKE_AUTH response 1 [ N(AUTH_FAILED) ]
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> peer supports MOBIKE
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> received ESP_TFC_PADDING_NOT_SUPPORTED, not using ESPv3 TFC padding
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing (25) attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP6_DNS attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP6_DHCP attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP6_ADDRESS attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP4_NETMASK attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP4_DNS attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP4_DHCP attribute
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> processing INTERNAL_IP4_ADDRESS attribute
                    Dec 23 18:28:15 charon 12[CFG] <bypasslan|6> no alternative config found
                    Dec 23 18:28:15 charon 12[IKE] <bypasslan|6> peer requested EAP, config unacceptable
                    Dec 23 18:28:15 charon 12[CFG] <bypasslan|6> selected peer config 'bypasslan'
                    Dec 23 18:28:15 charon 12[CFG] <6> ignore candidate 'con-mobile' without matching IKE proposal
                    Dec 23 18:28:15 charon 12[CFG] <6> candidate "con-mobile", match: 20/1/1052 (me/other/ike)
                    Dec 23 18:28:15 charon 12[CFG] <6> candidate "bypasslan", match: 1/1/24 (me/other/ike)
                    Dec 23 18:28:15 charon 12[CFG] <6> looking for peer configs matching xx.xxx.xxx.xx[xxxx.dyndns.org]...xx.xxx.xxx.xx[tobi]
                    Dec 23 18:28:15 charon 12[IKE] <6> received cert request for "CN=xxxxxxx.dyndns.org, C=DE, ST=xxxx, L=xxxx, O=Private"
                    Dec 23 18:28:15 charon 12[ENC] <6> parsed IKE_AUTH request 1 [ IDi N(INIT_CONTACT) N(MOBIKE_SUP) IDr CERTREQ CPRQ(ADDR DHCP DNS MASK ADDR6 DHCP6 DNS6 (25)) N(ESP_TFC_PAD_N) N(NON_FIRST_FRAG) SA TSi TSr ]
                    Dec 23 18:28:15 charon 12[ENC] <6> unknown attribute type (25)
                    Dec 23 18:28:15 charon 12[NET] <6> received packet: from xx.xxx.xxx.xx[2324] to xx.xxx.xxx.xx[4500] (384 bytes)
                    Dec 23 18:28:15 charon 12[NET] <6> sending packet: from xx.xxx.xxx.xx[500] to xx.xxx.xxx.xx[500] (313 bytes)
                    Dec 23 18:28:15 charon 12[ENC] <6> generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(FRAG_SUP) N(MULT_AUTH) ]
                    Dec 23 18:28:15 charon 12[IKE] <6> sending cert request for "CN=internalVPNCA, C=DE, ST=xxxxx, L=xxxxx, O=Private"
                    Dec 23 18:28:15 charon 12[IKE] <6> remote host is behind NAT
                    Dec 23 18:28:15 charon 12[CFG] <6> selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/ECP_384
                    Dec 23 18:28:15 charon 12[CFG] <6> configured proposals: IKE:AES_CBC_128/AES_CBC_192/AES_CBC_256/CAMELLIA_CBC_128/CAMELLIA_CBC_192/CAMELLIA_CBC_256/3DES_CBC/HMAC_SHA2_256_128/HMAC_SHA2_384_192/HMAC_SHA2_512_256/HMAC_SHA1_96/AES_XCBC_96/AES_CMAC_96/PRF_HMAC_SHA2_256/PRF_HMAC_SHA2_384/PRF_HMAC_SHA2_512/PRF_AES128_XCBC/PRF_AES128_CMAC/PRF_HMAC_SHA1/ECP_256/ECP_384/ECP_521/ECP_256_BP/ECP_384_BP/ECP_512_BP/CURVE_25519/MODP_3072/MODP_4096/MODP_6144/MODP_8192/MODP_2048, IKE:AES_GCM_16_128/AES_GCM_16_192/AES_GCM_16_256/AES_GCM_12_128/AES_GCM_12_192/AES_GCM_12_256/AES_GCM_8_128/AES_GCM_8_192/AES_GCM_8_256/PRF_HMAC_SHA2_256/PRF_HMAC_SHA2_384/PRF_HMAC_SHA2_512/PRF_AES128_XCBC/PRF_AES128_CMAC/PRF_HMAC_SHA1/ECP_256/ECP_384/ECP_521/ECP_256_BP/ECP_384_BP/ECP_512_BP/CURVE_25519/MODP_3072/MODP_4096/MODP_6144/MODP_8192/MODP_2048
                    Dec 23 18:28:15 charon 12[CFG] <6> received proposals: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/ECP_384
                    Dec 23 18:28:15 charon 12[CFG] <6> proposal matches
                    Dec 23 18:28:15 charon 12[CFG] <6> selecting proposal:
                    Dec 23 18:28:15 charon 12[IKE] <6> no matching proposal found, trying alternative config
                    Dec 23 18:28:15 charon 12[CFG] <6> candidate: xx.xxx.xxx.xx...%any, prio 1052
                    Dec 23 18:28:15 charon 12[CFG] <6> candidate: %any...%any, prio 24
                    Dec 23 18:28:15 charon 12[CFG] <6> looking for IKEv2 configs for xx.xxx.xxx.xx...xx.xxx.xxx.xx
                    Dec 23 18:28:15 charon 12[CFG] <6> configured proposals: IKE:AES_GCM_16_256/PRF_HMAC_SHA2_384/ECP_384
                    Dec 23 18:28:15 charon 12[CFG] <6> received proposals: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/ECP_384
                    Dec 23 18:28:15 charon 12[CFG] <6> no acceptable ENCRYPTION_ALGORITHM found
                    Dec 23 18:28:15 charon 12[CFG] <6> selecting proposal:
                    Dec 23 18:28:15 charon 12[IKE] <6> IKE_SA (unnamed)[6] state change: CREATED => CONNECTING

                    K 1 Reply Last reply Reply Quote 0
                    • DerelictD
                      Derelict LAYER 8 Netgate
                      last edited by

                      @imushroom said in Valid configuration for IKEv2 VPN for iOS and OSX:

                      ignore candidate 'con-mobile' without matching IKE proposal

                      Probably be better off posting a new thread. The forum tried to warn you. When you do post your IKEv2mobile configuration.

                      Chattanooga, Tennessee, USA
                      A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                      DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                      Do Not Chat For Help! NO_WAN_EGRESS(TM)

                      1 Reply Last reply Reply Quote 0
                      • K
                        Konstanti @imushroom
                        last edited by Konstanti

                        @imushroom Hey
                        Create a new thread and I'll write there what to do
                        Show the phase 1 and phase 2 IPSEC PFSense settings there and install Apple Configurator 2 from the App Store
                        or
                        https://wiki.strongswan.org/projects/strongswan/wiki/AppleClients
                        https://wiki.strongswan.org/projects/strongswan/wiki/AppleIKEv2Profile

                        1 Reply Last reply Reply Quote 0
                        • I
                          imushroom
                          last edited by

                          Hey,

                          @Konstanti thanks for your reply. I try to find time after the holidays to create a new topic.

                          I already installed the Apple Configurator 2.

                          K 2 Replies Last reply Reply Quote 0
                          • K
                            Konstanti @imushroom
                            last edited by

                            This post is deleted!
                            1 Reply Last reply Reply Quote 0
                            • K
                              Konstanti @imushroom
                              last edited by Konstanti

                              @imushroom Hope this helps you
                              https://grokdesigns.com/pfsense-ikev2-for-ios-macos-1/

                              All well-written
                              Part three - how to use Apple Configurator

                              1 Reply Last reply Reply Quote 0
                              • P
                                paulholloway2019 @shpokas
                                last edited by

                                @shpokas said in Valid configuration for IKEv2 VPN for iOS and OSX:

                                This hint worked for me, on both IOS and OS X.
                                https://lists.strongswan.org/pipermail/users/2015-October/008842.html

                                For details on my setup, please see https://forum.cheapessaywriter.org/index.php?topic=106694.0

                                Thank you for the link. Helped me to find a solution to my dns settings on ios.

                                1 Reply Last reply Reply Quote 0
                                • I
                                  imushroom
                                  last edited by imushroom

                                  After month of a working vpn my HDD was destroyed and I had no backup, I used the bad thing to turn it into something good - a clean pfSense and a perfect setup.

                                  But now I have some trouble with the Encryption.

                                  I currently use for phase 1 :

                                  AES 256bits SHA384 DH:20

                                  And for Phase 2 :

                                  AES 256bits SHA384 DH:20

                                  Is this secure enough?

                                  When I try to follow the tutorial it doesnt work. The Hash algorithm is also grey in Apple Configurator when I chose AES-256 GCM.

                                  Where is my mistake?

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