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

    OpenVPN - Peer to Peer

    Scheduled Pinned Locked Moved Français
    29 Posts 5 Posters 4.9k 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.
    • -
      -Sylvain-
      last edited by

      Pour chris4916

      Le client et le serveur ping leur propre IPs (LAN  + VPN), pas de problème de ce coté là.
      Le client ping l'interface du serveur (LAN + VPN)
      Le serveur ping uniquement l'interface VPN du client. L'interface LAN ne répond pas.

      Popur ccnet

      Suggères tu que je dois remplacer mon firewall existant (hardware) par pf ?

      -Sylvain-
      "May the force be with you! "

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

        @-Sylvain-:

        Suggères tu que je dois remplacer mon firewall existant (hardware) par pf ?

        Non, je m'interroge juste sur la raison d'être de cette architecture.

        1 Reply Last reply Reply Quote 0
        • TataveT
          Tatave
          last edited by

          salut salut

          pf est un pare feu aussi, d'où la question/suggestion de ccnet je pense.

          Personnellement je en comprends pas trop le schéma
          si j'ai bien vu
          on a un pf en vert qui a 3 cartes , et dont une protège un réseau en 10.0.10.0/24
          on a un réseau en 10.0.10.0/24 a aussi deux  pf en mauve et en vert
          on a un pf en mauve a 3 cartes, dont une avec le réseau en 10.0.10.0/24
          on a un un pare feu hardware entre les deux pf qui sont eux des pare feu logiciel/os

          je ne comprend pas trop l’intérêt du montage ou il nous manque des info et pas qu'une.

          Cordialement.

          aider, bien sûre que oui
          assister, évidement non !!!

          donner à manger à un homme, ne lui permettra que de survivre qu'un temps.
          apprendre à un homme comment cuisiner, il sera vivre.

          1 Reply Last reply Reply Quote 0
          • -
            -Sylvain-
            last edited by

            Pour tatave

            Le réseau bleu (10.0.10.0/24) c'est le réseau VPN (les cartes sont virtuelles …)
            Le réseau vert c'est le serveur : il y 2 cartes une pour le WAN et une pour le LAN.
            Le réseau mauve (surement celui qui pose problème) c'etst le client avec le FW frontal en tête de ligne. Il ne gère pas les tunnel VPN, je suis donc obligé d'utiliser un second firewall en cascade, derrière le frontal. c'est pfSense. j'ai raccordé pfsense a la DMZ géré par le FW frontal. donc 2 cartes : une raccordé à la DMZ et une raccordé au LAN.

            j'espère être clair

            -Sylvain-
            "May the force be with you! "

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

              @-Sylvain-:

              j'espère être clair

              Pas assez pour que je comprenne car tu écris

              Le serveur pfsense fait un ping sur l'IP LAN du client (IP 192.168.10.10) ==> Erreur

              et sur ton schéma, pour moi, 192.168.10.10, c'est précisément l'adresse LAN de pfSense

              il y a un typo quelque part ?
              Quelle est la passerelle par défaut des machines sur le réseau 192.168.10.0/23 ?

              Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

              1 Reply Last reply Reply Quote 0
              • -
                -Sylvain-
                last edited by

                OK, je reformule

                Les pings du pfsense du site 1 en direction del' adresse IP LAN du pfsense du site 2 échoue

                La passerelle par défaut (et l'unique) est 192.168.10.10 (pfsense)

                -Sylvain-
                "May the force be with you! "

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

                  Maintenant, grâce a tes explications et tes commentaires, je commence à comprendre un peu mieux.

                  Ce qui m'a "confusé" c'est que tu parles à la fois de mode "peer-to-peer" et de "client-serveur"

                  En mode "site-à-site" (peer-to-peer), il n'y a pas de client-serveur à proprement parlé, même si une des 2 extrémités du tunnel va initier la connexion.
                  Une fois la connexion établie, les 2 LAN vont "se voir".
                  En mode client-serveur, ce n'est absolument pas vrai. Le client va voir le LAN exposé par le serveur mais les clients sur le LAN ne voient pas le client VPN comme un réseau accessible.

                  Je partage l'avis de ccnet: si tu ne décris pas plus précisément tes config VPN de par et d'autre, il va être difficile d'aller plus loin. Le problème n'est peut-être pas le FW intermédiaire (je suppose que tu as mis en place à ce niveau les règles nécessaire) mais peut-être plus au niveau du VPN lui-même

                  Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

                  1 Reply Last reply Reply Quote 0
                  • -
                    -Sylvain-
                    last edited by

                    Voici les exports XML de la config VPN et des règles de sécurité

                    Site 1

                    Config VPN
                    <openvpn-server><vpnid>2</vpnid>
                    <mode>p2p_tls</mode>
                    <protocol>UDP</protocol>
                    <dev_mode>tun</dev_mode>
                    <ipaddr><interface>wan</interface>
                    <local_port>1195</local_port>

                    <custom_options><tls>XXXXX</tls>
                    <caref>XXXXX</caref>
                    <crlref><certref>XXXXX</certref>
                    <dh_length>1024</dh_length>
                    <cert_depth>1</cert_depth>
                    <crypto>AES-256-CBC</crypto>
                    <digest>SHA1</digest>
                    <engine>none</engine>
                    <tunnel_network>10.0.10.0/24</tunnel_network>
                    <tunnel_networkv6><remote_network>192.168.10.0/23</remote_network>
                    <remote_networkv6><gwredir><local_network>172.16.1.0/24</local_network>
                    <local_networkv6><maxclients><compression><passtos><client2client><dynamic_ip>yes</dynamic_ip>
                    <pool_enable>yes</pool_enable>
                    <topology>subnet</topology>
                    <serverbridge_dhcp><serverbridge_interface>none</serverbridge_interface>
                    <serverbridge_dhcp_start><serverbridge_dhcp_end><netbios_enable><netbios_ntype>0</netbios_ntype>
                    <netbios_scope><no_tun_ipv6>yes</no_tun_ipv6>
                    <verbosity_level>1</verbosity_level></netbios_scope></netbios_enable></serverbridge_dhcp_end></serverbridge_dhcp_start></serverbridge_dhcp></client2client></passtos></compression></maxclients></local_networkv6></gwredir></remote_networkv6></tunnel_networkv6></crlref></custom_options></ipaddr></openvpn-server>

                    Règles
                    <rule><id><tracker>1472923908</tracker>
                    <type>pass</type>
                    <interface>wan</interface>
                    <ipprotocol>inet</ipprotocol>
                    <tag><tagged><max><max-src-nodes><max-src-conn><max-src-states><statetimeout><statetype>keep state</statetype>
                    <os><protocol>udp</protocol>
                    <source>
                    <any><destination><network>wanip</network>
                    <port>1195</port></destination>

                    <updated><time>1472923908</time>
                    <username>admin@10.0.8.2</username></updated>
                    <created><time>1472923908</time>
                    <username>admin@10.0.8.2</username></created></any></os></statetimeout></max-src-states></max-src-conn></max-src-nodes></max></tagged></tag></id></rule>
                    <rule><type>pass</type>
                    <ipprotocol>inet</ipprotocol>

                    <interface>lan</interface>
                    <tracker>0100000101</tracker>
                    <source>
                    <network>lan</network>

                    <destination><any></any></destination></rule>
                    <rule><type>pass</type>
                    <ipprotocol>inet6</ipprotocol>

                    <interface>lan</interface>
                    <tracker>0100000102</tracker>
                    <source>
                    <network>lan</network>

                    <destination><any></any></destination></rule>
                    <rule><id><tracker>1472923962</tracker>
                    <type>pass</type>
                    <interface>openvpn</interface>
                    <ipprotocol>inet</ipprotocol>
                    <tag><tagged><max><max-src-nodes><max-src-conn><max-src-states><statetimeout><statetype>keep state</statetype>
                    <os><source>
                    <any><destination><any></any></destination>
                    <log><created><time>1472920588</time>
                    <username>OpenVPN Wizard</username></created>
                    <updated><time>1473110776</time>
                    <username>admin@10.0.8.2</username></updated></log></any></os></statetimeout></max-src-states></max-src-conn></max-src-nodes></max></tagged></tag></id></rule>

                    Site 2

                    Config VPN
                    <openvpn-client><auth_user><auth_pass><vpnid>1</vpnid>
                    <protocol>UDP</protocol>
                    <dev_mode>tun</dev_mode>
                    <ipaddr><interface>wan</interface>
                    <local_port><server_addr>IP Public</server_addr>
                    <server_port>1195</server_port>
                    <resolve_retry><proxy_addr><proxy_port><proxy_authtype>none</proxy_authtype>
                    <proxy_user><proxy_passwd><mode>p2p_tls</mode>
                    <topology>subnet</topology>
                    <custom_options><caref>XXXX</caref>
                    <certref>XXXXX</certref>
                    <tls>XXXX</tls>
                    <crypto>AES-256-CBC</crypto>
                    <digest>SHA1</digest>
                    <engine>none</engine>
                    <tunnel_network>10.0.10.0/24</tunnel_network>
                    <tunnel_networkv6><remote_network>172.16.1.0/24</remote_network>
                    <remote_networkv6><use_shaper><compression><passtos><no_tun_ipv6><route_no_pull><route_no_exec><verbosity_level>1</verbosity_level></route_no_exec></route_no_pull></no_tun_ipv6></passtos></compression></use_shaper></remote_networkv6></tunnel_networkv6></custom_options></proxy_passwd></proxy_user></proxy_port></proxy_addr></resolve_retry></local_port></ipaddr></auth_pass></auth_user></openvpn-client>

                    Règles :
                    <rule><type>pass</type>
                    <ipprotocol>inet</ipprotocol>

                    <interface>lan</interface>
                    <tracker>0100000101</tracker>
                    <source>
                    <network>lan</network>

                    <destination><any></any></destination></rule>
                    <rule><type>pass</type>
                    <ipprotocol>inet6</ipprotocol>

                    <interface>lan</interface>
                    <tracker>0100000102</tracker>
                    <source>
                    <network>lan</network>

                    <destination><any></any></destination></rule>
                    <rule><id><tracker>1472924613</tracker>
                    <type>pass</type>
                    <interface>openvpn</interface>
                    <ipprotocol>inet</ipprotocol>
                    <tag><tagged><max><max-src-nodes><max-src-conn><max-src-states><statetimeout><statetype>keep state</statetype>
                    <os><source>
                    <any><destination><any></any></destination>
                    <log><created><time>1472924613</time>
                    <username>admin@192.168.10.131</username></created>
                    <updated><time>1473110789</time>
                    <username>admin@192.168.10.133</username></updated></log></any></os></statetimeout></max-src-states></max-src-conn></max-src-nodes></max></tagged></tag></id></rule>

                    -Sylvain-
                    "May the force be with you! "

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

                      Je ne suis pas certain d'avoir la patience (ni le temps) de lire la config directement depuis le fichier XML. J'ai un peu de boulot en ce moment  :-) !
                      Une remarque :

                      <crypto>AES-256-CBC</crypto>
                            <digest>SHA1</digest>

                      AES c'est bien et en 128 bits çà ira aussi bien. Gardez le mode CBC c'est important. Par contre SHA-1 est compromis. Utilisez sha-256. Mettre de l'AES 256 avec du sha-1 n'est pas très cohérent. Si on parle de sécurité AES 128 CBC + SHA256 est préférable à AES 256 CBC + SHA1.

                      1 Reply Last reply Reply Quote 0
                      • -
                        -Sylvain-
                        last edited by

                        Ok je prends note, mais j'avoue que ma priorité c'était de faire fonctionner le tunnel.

                        Pour les informations j'ai essayé d'en donner le maximum.
                        Mais pour faire simple :
                        J'ai une règle, sur les 2 sites, qui autorise tous les protocoles sur l'interface OpenVPN.
                        J'ai une règle sur le site 1 qui ouvre le port 1195 sur l'interface WAN (Port 1194 utilisé pour un remote access)
                        je n'ai pas d'autre règle hormis celle en standard créé par pfsense.

                        -Sylvain-
                        "May the force be with you! "

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

                          Avant de passer plus de temps sur les aspects "règles de FW", une fois le tunnel établi, peux-tu regarder quelles sont les routes sur chaque pfSense ?
                          Si sur chaque pfSense il n'y a pas une route qui dit: "pour joindre le site distant, passer par le tunnel VPN", il est normal que ça ne marche pas.

                          Et pour que cette route existe de chaque coté, il faut qu'elle soit annoncée au niveau de OpenVPN.

                          Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

                          1 Reply Last reply Reply Quote 0
                          • -
                            -Sylvain-
                            last edited by

                            Voici les routes de chaque pfsense

                            Site 1
                            http://imgur.com/VEDQWLm

                            Site 2
                            http://imgur.com/Khc8tCr

                            -Sylvain-
                            "May the force be with you! "

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

                              Il y a 2 serveurs VPN configurés sur le serveur pfSense "de gauche" (sur ton schéma) ?

                              Les routes ont l'air correct.

                              Tu peux activer les log au niveau FW sur le pfSense cible pour voir quelle règle est appliquée lorsque tu fais un ping (on suppose bien sûr que ICMP est autorisée de bout en bout) car pour moi le tunnel à l'air OK et il s'agit probablement d'un problème de règle de FW (un truc qui n'autoriserait que TCP et pas ICMP ce qui empêcherait le ping)

                              Tu devrait d’ailleurs, au lieu de faire des ping au niveau de pfSense, regarder ce qui se passe dans la communication entre clients et serveur "du LAN", sur des protocoles "TCP" ce qui te donnera une indication du niveau de fonctionnement et permettra sans doute de réduire le scope des investigations

                              Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

                              1 Reply Last reply Reply Quote 0
                              • -
                                -Sylvain-
                                last edited by

                                Bonjour,

                                J'ai régler le problème autrement.
                                J'ai réinitialiser les 2 pf et remonter une configuration VPN basé sur une clé partagée.
                                Et cela fonctionne très bien.

                                Merci quand même de votre aide.

                                -Sylvain-
                                "May the force be with you! "

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