Bonjour à tous,
Je m'occupe du réseau d'une petite association sur mon temps libre, et j'aurais besoin de vos lumières pour configurer correctement une connexion VPN dans laquelle je souhaite faire passer l'intégralité du trafic.
[Message un peu long, mais j'essaie d'être le plus précis possible]
L'architecture, classique je crois, est la suivante :
- un routeur 4G (aux fonctionnalité élémentaires), qui fournit la connexion internet (IP non fixe, CG-nat ...)
- déclaré sur la DMZ de ce routeur 4G, un routeur tournant sur pfsense, avec 3 interfaces :
- WAN : 192.168.0.3, l'IP (statique) donnée par le routeur 4G au routeur pfsense
- LAN : 192.168.1.0/255.255.255.0, géré par le routeur pfsense (DHCP, DNS, proxy http, etc.)
- VPN_VPS : interface créée suite à la connexion d'un client openVPN sur le routeur pfsense. IP = 10.8.0.2, IP (statique) donnée par le serveur openVPN tournant sur un VPS distant
- un ou plusieurs serveurs situés sur le LAN
- un serveur VPS (sous Debian) qui ne fait tourner qu'1 serveur SSH et un serveur openVPN (10.8.0.0/24).
Je souhaite faire passer l'intégralité de mon trafic entrant et sortant par le VPN, et gérer les ouvertures de port de mes différents services (SSH, web, etc.) vers différentes machines du LAN depuis mon routeur pfsense. L'IP publique du VPS est associée à plusieurs noms de domaine, comme par exemple web.mydomain.com ou mail.mydomain.com.
Pour l'instant, j'arrive à envoyer tout le trafic sortant par le VPN : l'ensemble des clients du LAN passent bien par le VPN pour accéder au web. Pour cela, j'ai (au cas où j'aurais fait un truc qu'il ne fallait pas) :
* Sur le routeur pfsense :
- réglé l'outbound NAT pour l'interface VPN_VPS
- mis une règle par défaut sur le firewall (placée après quelques autres règles) qui autorise la sortie du LAN vers tout hôte/tout port, mais en passant par la passerelle définie par l'interface VPN_VPS
- forcé le serveur DNS à passer par l'interface VPN_VPS.
* Sur le VPS :
- politique par défaut (IN/OUT/FORWARD): accept
- /sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o ens2 -j MASQUERADE
Maintenant, je n'arrive pas / je ne sais pas faire :
- une fois connecté au VPN, les clients du LAN ne peuvent pas accéder au serveur SSH du VPS via son nom de domaine. Seule solution : s'y connecter via son IP côté VPN (10.8.0.1). Je me demande se ce n'est pas un problème de route, mais j'ai du mal encore à voir précisément où (sur le routeur pfsense ? sur le VPS ?).
- j'aimerais maintenant ouvrir des ports pour enfin pouvoir accéder à mes serveurs hébergés sur le LAN depuis le VPS (qui a une IP fixe) en passant par le VPN. Faut il : ouvrir sur le VPS vers le routeur pfsense, puis ouvrir depuis le routeur pfsense vers l'hôte du LAN ? N'y a t'il pas moyen de régler tout ça à un unique endroit ? (De préférence sur le routeur pfsense, sur l'interface VPN_VPS)
- une fois les ports ouverts, j'aimerais que les clients du LAN accèdent sans soucis aux serveurs (et qui sont donc aussi sur le LAN), mais via leur adresse internet (web.mydomain.com, ou mail.mydomain.com, etc.)
Merci pour vos bons conseils !