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

    [Completed] Working eap-tls / pfSense 2.2 - $100 USD

    Scheduled Pinned Locked Moved Bounties
    28 Posts 2 Posters 9.0k 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.
    • E
      eri--
      last edited by

      What if you do even leftauth=eap-tls or as usual but adding rightsendcert=never?

      Also can you post full ipsec.conf section of the connection?

      EDIT: also can you see based on this https://wiki.strongswan.org/projects/strongswan/wiki/Win7EapMultipleConfig

      1 Reply Last reply Reply Quote 0
      • H
        hege
        last edited by

        Jan 15 22:15:53 charon: 07[IKE] configured EAP-only authentication, but peer does not support it
        Jan 15 22:15:53 charon: 07[IKE] <con3|43>configured EAP-only authentication, but peer does not support it

        
        conn con3
                reqid = 3
                fragmentation = yes
                keyexchange = ikev2
                reauth = yes
                forceencaps = no
                rekey = yes
                installpolicy = yes
                type = tunnel
                dpdaction = none
                auto = add
                left = WAN-IP
                right = %any
                compress = yes
                ikelifetime = 28800s
                lifetime = 3600s
                rightsourceip = 172.16.94.0/24
                ike = aes256-sha256-modp1024!
                esp = aes256-sha1-modp1024,aes256-sha256-modp1024!
                eap_identity=%identity
                leftauth=eap-tls
                rightauth=eap-tls
                leftcert=/var/etc/ipsec/ipsec.d/certs/cert-3.crt
                rightsubnet = 172.16.94.0/24
                leftsubnet = 0.0.0.0/0
        
        

        edit: with usual but rightsendcert=never same as always

        Jan 15 22:19:11 charon: 13[TLS] sending fatal TLS alert 'certificate unknown'
        Jan 15 22:19:11 charon: 13[TLS] no trusted certificate found for 'Client-CN' to verify TLS peer</con3|43>

        1 Reply Last reply Reply Quote 0
        • E
          eri--
          last edited by

          Can you try with as usual but adding rightsendcert=never?

          Can you also try a config as per  https://wiki.strongswan.org/projects/strongswan/wiki/Win7EapMultipleConfig

          1 Reply Last reply Reply Quote 0
          • H
            hege
            last edited by

            Your link is pointing to a working eap-mschapv2 config (the one I used for my first tests with mschap)

            I tried it now, and some days ago, with this config and many variations without success
            https://wiki.strongswan.org/projects/strongswan/wiki/Win7UserMultipleConfig

            Windows 8
            Jan 15 22:36:08 charon: 11[JOB] deleting half open IKE_SA after timeout
            Jan 15 22:36:00 charon: 11[NET] sending packet: from Server-IP[500] to Client-IP[500] (108 bytes)

            Windows Phone
            Jan 15 22:19:11    charon: 13[TLS] sending fatal TLS alert 'certificate unknown'
            Jan 15 22:19:11    charon: 13[TLS] no trusted certificate found for 'Client-CN' to verify TLS peer

            conn con3
                    reqid = 3
                    fragmentation = yes
                    keyexchange = ikev2
                    reauth = yes
                    forceencaps = no
                    rekey = yes
                    installpolicy = yes
                    type = tunnel
                    dpdaction = none
                    auto = add
                    left = 123.123.123.123
                    right = %any
                    compress = yes
                    ikelifetime = 28800s
                    lifetime = 3600s
                    rightsourceip = 172.16.94.0/24
                    ike = aes256-sha256-modp1024!
                    esp = aes256-sha1-modp1024,aes256-sha256-modp1024!
                    leftauth=pubkey
                    rightauth=eap-tls
                    leftcert=/var/etc/ipsec/ipsec.d/certs/cert-3.crt
                    rightsubnet = 172.16.94.0/24
                    leftsubnet = 0.0.0.0/0
                    rightsendcert=never
            

            I really need some sleep, I will continue until tomorrow evening, and I hope that with the windows 8 debug files it should be easier to find the issue. - Windows Phone is hard to debug.

            1 Reply Last reply Reply Quote 0
            • H
              hege
              last edited by

              After hours of testing and searching I finally could connect with a workaround, which is unusable for productive use :(

              My test environment: (I can give you direct access if you like - just pm me)

              Certs generated by pfSense (root cert / vpn cert / client cert - vpn cert with the DNS name as SAN)

              
              pfSense 2.2 RC Config
              	WAN	84.123.123.122
              	Lan	192.168.123.1 
              	EAP-TLS:
              		My identifier: fw.test.domain.local
              		My Cert:	fw.test.domain.local (Server Cert / Alt.Name: fw.test.domain.local/ issued by Test-CA)
              		My CA:		Test-CA
              	P1:	AES 256 / SHA256 / DH2 / Lifetime 28800 / NAT AUto / DPD 10,5
              	P2:	Network: 0.0.0.0/0 / ESP / AES256 / SHA1 / PFS OFF / Lifetime 3600
              Win 8 Config
              	LAN: 84.123.123.123 (direct WAN Access)
              	IKEv2 Config:
              		Hostname: fw.test.domain.local
              		Type: 	IKEv2
              		encryption:	Require encryption
              		Authentication: EAP
              			Use a certificate on this computer (advanced: issued by Test-CA)
              			Verify the servers identity
              			Connect to these servers
              				fw.test.private.domain
              			Trusted Root CA:
              				Test-CA
              			Use a different user name for the connection
              
              

              Connect:
              Cert: Test-VPNCLient
              Connection user name: C=US, ST=Vienna, L=Vienna, O=Test, E=test@domain.local, CN=Test-VPNClient

              Connection and successful traffic to 192.168.123.1 !

              Successful connection logs:
              Edit: removed connection log

              1 Reply Last reply Reply Quote 0
              • H
                hege
                last edited by

                Connection without "Use a different user name for the connection" option and with variations of eap_identity (%any / %identity)

                charon: 16[IKE] EAP method EAP_TLS failed for peer 84.123.123.123
                ..
                charon: 16[TLS] no trusted certificate found for 'Test-VPNClient' to verify TLS peer
                ..
                charon: 16[TLS] received TLS peer certificate 'C=US, ST=Vienna, L=Vienna, O=Test-Hege, E=test@test.domain, CN=Test-VPNClient'
                ..
                charon: 13[IKE] received EAP identity 'Test-VPNClient'

                Edit: removed the log file

                1 Reply Last reply Reply Quote 0
                • E
                  eri--
                  last edited by

                  What do you mean by unusable ?
                  I did not understand why its unusable for production use?

                  1 Reply Last reply Reply Quote 0
                  • H
                    hege
                    last edited by

                    The VPN-user have to paste the full cert value as his username, which is very long and you can't save this value, so you have to insert this "username" every time.

                    eap-tls have to work without any user-input.

                    Also this workaround is not possible on Windows Phone, because you can't specify an username there.

                    Edit: Maybe that is the solution https://lists.strongswan.org/pipermail/users/2010-October/000814.html - I will try that as soon as possible!
                    Edit2: Yep, just a client cert issue, such a waste of free time…

                    Cert requirements,

                    • Full trust of chain (Root CA have to be installed on the client)

                    • pfSense Server cert needs the EKU "Server Authentification", also the FQDN in the Subject Alternative Names

                    • pfSense Client Cert needs the EKU "Client Authentification", also the CN name as a FQDN in the SAN

                    ermal, THANK YOU VERY MUCH!

                    Please let me know, how I can donate my bounty to pfSense.

                    1 Reply Last reply Reply Quote 0
                    • E
                      eri--
                      last edited by

                      I think buying the gold package is the nearest donate approach :)

                      Thank you, hege for confirming it works.

                      1 Reply Last reply Reply Quote 0
                      • H
                        hege
                        last edited by

                        done, bit I still owe you a dollar :)

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