[pfSense] Monter un VPN IPsec natté (Overlap network)
27/10/2020 - Aucun commentaire
Un cas fréquent lorsque l'on souhaite connecter deux sites en VPN est que ces deux sites soient sur le même plan d'adressage.
Dans ce cas, une bonne solution peut être de recourir au NAT pour la mise en place d'un VPN natté.
Par exemple, si l'on souhaite connecter deux sites utilisant le sous-réseau 192.168.1.0/24, ceux-ci ne pourront pas communiquer l'un vers l'autre à travers le VPN car le plan d'adressage du réseau distant est le même que celui du réseau local.
Afin d'y remédier, nous proposons d'utiliser le NAT pour communiquer d'un réseau à l'autre. C'est le principe du VPN natté (overlap network).
À noter : nous ne détaillons pas dans cet article comment configurer un VPN IPsec site-à-site. Il existe déjà un article dédié sur le sujet : [pfSense] Configurer un VPN IPsec site à site.
Principe de fonctionnement
Nous allons prendre l'exemple de deux sites (A et B) disposant tous deux du même plan d'adressage 192.168.1.0/24 :
Afin de pouvoir relier ces deux sites en VPN, nous avons deux possibilités :
- translater l'intégralité du plan d'adressage réseau du site A afin qu'il soit joignable depuis le site B à travers le VPN IPsec. Et inversement, nous ferons de même du plan d'adressage réseau du site B afin qu'il soit joignable depuis le site A à travers le VPN IPsec.
- translater l'intégralité du trafic sur une seule adresse IP. C'est un peu ce principe qui est utilisé lors de la navigation sur Internet : toutes les adresses IP privées du réseau local sont nattées sur l'adresse IP publique de la connexion Internet.
Le choix du type de NAT dépend du contexte et des attendus.
Si l'on souhaite accéder à plusieurs équipements et que le plan d'adressage disponible le permet, le mieux est de réaliser un NAT un-pour-un (1:1 NAT) - c'est-à-dire la première solution évoquée ci-dessus.
Dans le cas contraire, un NAT simple sur une seule adresse IP suffira.
Dans notre exemple, nous allons faire en sorte que :
- depuis le site A : le réseau local du site B sera joignable via le sous-réseau 192.168.200.0/24 ; ainsi, depuis le site A, pour joindre le serveur 192.168.1.222 (présent sur le site B), on attaquera l'adresse IP 192.168.200.222.
- depuis le site B : le réseau local du site A sera joignable via le sous-réseau 192.168.100.0/24 ; ainsi, depuis le site B, pour joindre le serveur 192.168.1.111 (présent sur le site A), on attaquera l'adresse IP 192.168.100.111.
Configuration du VPN natté
Sur le serveur pfSense du site A, nous nous rendons dans le menu VPN > IPsec :
Nous ne détaillons pas la configuration de la phase 1; cette partie est traitée dans notre article dédié [pfSense] Configurer un VPN IPsec site à site.
Concernant la phase 2, les éléments spécifiques à configurer sont les suivants :
- Mode : choisir Tunnel IPv4. Attention, le NAT n'est pas possible avec la mise en place d'un VPN IPsec routé [Routed (VTI)].
- Local Network : choisir "LAN subnet", ou d'une façon générale, le sous-réseau local réel que nous souhaitons rendre accessible à travers le VPN IPsec (192.168.1.0/24, dans notre cas).
- NAT/BINAT translation : choisir "Network" et indiquer "192.168.100.0/24" pour les champs adresses et masques.
- Remote Network : choisir "Network" et indiquer "192.168.200.0/24".
Les autres paramètres de la phase 2, ne sont pas spécifiques au fait de monter un VPN natté, nous ne les détaillons donc pas ici.
Exemple de résultat obtenu pour le site A :
Sur le serveur pfSense du site B, nous réalisons la même configuration, mais en pensant à bien inverser les valeurs.
Exemple de résultat obtenu pour le site B :
Configuration des règles de filtrage
Il nous reste à adapter nos règles de filtrage au plan d'adressage translaté.
Ainsi, sur notre interface LAN, pour filtrer le trafic du réseau local du site A à destination du site B, en source nous préciserons le LAN subnet (192.168.1.0/24) et en destination le sous-réseau natté pour le site B (192.168.200.0/24).
Exemple de résultat obtenu pour le site A :
Pour filtrer le trafic en provenance du VPN IPsec (onglet IPsec), l'opération de NAT ayant déjà eu lieu, le filtrage doit bien se faire sur les adresses IP réelles du site local et sur les adresses IP nattées du site distant.
Exemple de résultat obtenu pour le site A :
Voilà, nous avons vu comment mettre en œuvre un VPN IPsec natté avec pfSense.
Pour aller plus loin
[pfSense] Configurer un VPN IPsec site à site
[pfSense] NAT / filtrage - Comprendre l'ordre des traitements appliqués par pfSense
[pfSense] Monter un VPN natté (Overlap network) avec OpenVPN
Tous nos articles classés par thème
Voir un article au hasard
Vous avez aimé cet article ? Vous cherchez du matériel de qualité ? Alors contactez-nous.