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

    Crée un VPN pour client mobile

    Scheduled Pinned Locked Moved Français
    15 Posts 4 Posters 3.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.
    • G
      g.sommer
      last edited by

      J'ai tester ton script mais quand je rentre un utilisateur et son mdp (il est dans le groupe admins ça devrai être bon) j'ai un échec de connexion, sinon avec un autre script que j'ai adapter j'ai l'impression que j'y suis presque !

      script:

      client
      dev tun
      proto udp
      port 1194
      remote 192.168.1.2 1194
      persist-key
      persist-tun
      ca ca.crt
      cert client1.crt
      key client1.key
      verb 4

      log client :

      Wed Apr 13 11:57:54 2016 us=495554 TLS: Initial packet from [AF_INET]192.168.1.2:1194, sid=f419a3e1 779258a4
      Wed Apr 13 11:57:54 2016 us=516054  VERIFY OK: depth=1, C=FR, ST=xxxxx, L=xxxx, O=xxxxx, emailAddress=g.sommer@xxxxx.com, CN=xxx.local
      Wed Apr 13 11:57:54 2016 us=516554 VERIFY OK: depth=0, C=FR, ST=xxxxxx, L=xxxxx, O=xxxxx, emailAddress=g.sommer@xxx.com, CN=xxx.local
      Wed Apr 13 11:58:54 2016 us=527054 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
      Wed Apr 13 11:58:54 2016 us=527054 TLS Error: TLS handshake failed

      log srv :

      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 Local Options String: 'V4,dev-type tun,link-mtu 1557,tun-mtu 1500,proto UDPv4,cipher AES-128-CBC,auth SHA1,keysize 128,key-method 2,tls-server'
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 Expected Remote Options String: 'V4,dev-type tun,link-mtu 1557,tun-mtu 1500,proto UDPv4,cipher AES-128-CBC,auth SHA1,keysize 128,key-method 2,tls-client'
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 Local Options hash (VER=V4): 'b7f67de4'
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 Expected Remote Options hash (VER=V4): '8326dbaa'
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 TLS: Initial packet from [AF_INET]192.168.1.98:1194, sid=f3543470 939c4d9d
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 VERIFY ERROR: depth=0, error=unsupported certificate purpose: C=FR, ST=xxxxxxx, L=xxxxxx, O=xxxxxx, emailAddress=g.sommer@xxxxxxxxx.com, CN=xxx.local
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 TLS_ERROR: BIO read tls_read_plaintext error: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 TLS Error: TLS object -> incoming plaintext read error
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 TLS Error: TLS handshake failed
      Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 SIGUSR1[soft,tls-error] received, client-instance restarting
      Apr 13 11:58:38 openvpn[67463]: MANAGEMENT: Client connected from /var/etc/openvpn/server1.sock
      Apr 13 11:58:38 openvpn[67463]: MANAGEMENT: CMD 'status 2'
      Apr 13 11:58:38 openvpn[67463]: MANAGEMENT: CMD 'quit'
      Apr 13 11:58:38 openvpn[67463]: MANAGEMENT: Client disconnected

      1 Reply Last reply Reply Quote 0
      • C
        ccnet
        last edited by

        Apr 13 11:57:54 openvpn[67463]: 192.168.1.98:1194 TLS: Initial packet from [AF_INET]192.168.1.98:1194,

        Comment réalisez vous le test ? (Les connexions depuis le lan ne permettent pas un test correct).

        1 Reply Last reply Reply Quote 0
        • J
          jdh
          last edited by

          Que de mélanges ! (Ipsec vs OpenVPN et maintenant User vs certificat)

          je rentre un utilisateur et son mdp (il est dans le groupe admins ça devrai être bon)

          Les users du firewall n'ont presque aucun intérêt et ne doivent pas être confondus avec les certificats !!

          OpenVPN peut (doit) s'appuyer sur les certificats générés par 'Cert Manager' (par exemple).
          Il faut créer une CA (Autorité de certification), un certificat 'Serveur' à renseigner dans le serveur OpenVPN, des certificats 'Users' qui seront indiqués dans le fichier côté client.
          De plus, le serveur OpenVPN indique une clé 'tls' à indiquer côté client. (faire un fichier et l'indiquer dans la ligne tls). Cela est manquant et clairement indiqué comme erreur dans les logs !

          Concernant le test, il est clair qu'il doit être fait … de l'extérieur !

          Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

          1 Reply Last reply Reply Quote 0
          • G
            g.sommer
            last edited by

            ccnet non pour le moment mon lan est en 192.168.0.0 et mon wan en 192.168.1.0, plus tard en prod ce sera le contraire. Pourquoi je ne commence pas directement dans le bon sens ? Pour ne pas toucher au paramètre ip de mon routeur …

            jdh, oui j'avais compris qu'il ne servais pas a grand chose les users de mon pfsense, du coup quoi renseigner quand il me pose la question ? Oui je doit avouer que j'ai du mal avec la notion d'autorité de certification et les certifia délivrés.  :(



            1 Reply Last reply Reply Quote 0
            • C
              ccnet
              last edited by

              Non.
              Avez vous bien créé un certificat (signé par la CA) et une clé pour le serveur avant de tenter une connexion ?
              Il ne serait pas inutile de lire un de littérature sur le fonctionnement des certificats et leurs principes d'utilisation.

              1 Reply Last reply Reply Quote 0
              • G
                g.sommer
                last edited by

                ENFIN !!!! j'utilisais le certificat appeler "User Cert" du coup je m'en suis crée un qui s'appel "client1" en internal Certificate
                Key length: 1024 bits
                Digest Algorithm: sha1 (je sais que le sha1 a été casser je passerai a mieux)
                Certificate Type: User Certificate

                Bingo ^^ connecter avec l'ip assignée 192.168.0.6. Je savais que j'était pas loin, j'ai juste changer mon télécharger mon client1.crt et .key depuis le précédent post avec les mêmes config, je vais voir pour améliorer le truck puis mettre en prod

                Des bisous tous le monde  :-* merci de votre aide ça ma bien avancé !

                ps: si jamais vous avez d'autre remarque points important je suis preneur :D

                edit: je suis repasser avec un certificat en sha256 et connexion en aes-192-cbc et ça passe tout debout !

                1 Reply Last reply Reply Quote 0
                • C
                  ccnet
                  last edited by

                  Key length: 1024 bits

                  La recommandation pour la protection d'informations à l'horizon 2020 est d'utiliser des clés de 2048 bits.
                  Pensez à filtrer les flux sur l'interface OPenvpn.
                  Forcez le routage des connexions vers internet par l'infrastructure distante et non directement depuis le PC : push "redirect-gateway".

                  1 Reply Last reply Reply Quote 0
                  • J
                    jdh
                    last edited by

                    En sus de ccnet, outre des clés de longueur 2048 bits,

                    il faut aussi activer la ligne 'tls-auth xxxxx.key 1' avec xxxxx.key fichier qui contient la clé tls visible dans le serveur OpenVPN

                    cf site Openvpn : https://openvpn.net/index.php/open-source/documentation/howto.html

                    Hardening OpenVPN Security

                    One of the often-repeated maxims of network security is that one should never place so much trust in a single security component that its failure causes a catastrophic security breach. OpenVPN provides several mechanisms to add additional security layers to hedge against such an outcome.
                    tls-auth

                    The tls-auth directive adds an additional HMAC signature to all SSL/TLS handshake packets for integrity verification. Any UDP packet not bearing the correct HMAC signature can be dropped without further processing. The tls-auth HMAC signature provides an additional level of security above and beyond that provided by SSL/TLS. It can protect against:

                    DoS attacks or port flooding on the OpenVPN UDP port.
                        Port scanning to determine which server UDP ports are in a listening state.
                        Buffer overflow vulnerabilities in the SSL/TLS implementation.
                        SSL/TLS handshake initiations from unauthorized machines (while such handshakes would ultimately fail to authenticate, tls-auth can cut them off at a much earlier point).

                    Using tls-auth requires that you generate a shared-secret key that is used in addition to the standard RSA certificate/key:

                    openvpn –genkey --secret ta.key

                    This command will generate an OpenVPN static key and write it to the file ta.key. This key should be copied over a pre-existing secure channel to the server and all client machines. It can be placed in the same directory as the RSA .key and .crt files.

                    In the server configuration, add:

                    tls-auth ta.key 0

                    In the client configuration, add:

                    tls-auth ta.key 1

                    Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

                    1 Reply Last reply Reply Quote 0
                    • G
                      g.sommer
                      last edited by

                      Pour Les 2048 bits, c'est bon par contre pour le tls j'ai deux questions.
                      Je coche les deux casses Enable authentication of TLS packets et automatically generate a shared TLS authentication key, juste le premier ou pas besoin ? (je pense pas)
                      Il sort d'où le ta.key ? ??? Faut crée un certificat et le mettre sur serveur et le client !? Faut mettre quelque chose de particulier ? Ou alors c'est la key de mon CA ?

                      1 Reply Last reply Reply Quote 0
                      • G
                        g.sommer
                        last edited by

                        Re à tous, pourquoi chercher compliquer quand c'est simple !?  ::)

                        ajouter la ligne dans la conf client : tls-auth ta.key 1

                        cocher Enable authentication of TLS packets dans la conf serveur openVPN, on copie/colle dans un block note que l'on renomme en ta.key et c'est tout bon

                        la version 2.2.6 est vraiment bien pour les néophyte de FreeBSD et puis c'est plus pratique que putty

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