Je voudrais utiliser ma station de travail linux comme passerelle VPN pour mon réseau local. La même station de travail est utilisée comme serveur web. Lorsque je connecte la station de travail au VPN, il n'est plus possible d'atteindre ce serveur Web depuis un réseau extérieur.
Ma configuration est la suivante :
Routeur ISP - ip 192.168.0.1 (passerelle par défaut, port mapping activé pour utiliser un port public non standard)
Station de travail Linux - ip fixe 192.168.0.20 (serveur dhcp car mon routeur ne permet pas de changer l'adresse de la passerelle, openvpn, apache, serveur dns)
sortie de "ip route show"
0.0.0.0/1 via 10.8.3.1 dev tun0
default via 192.168.0.1 dev eth0 src 192.168.0.20 metric 202
10.8.3.0/24 dev tun0 proto kernel scope link src 10.8.3.12
37.120.143.221 via 192.168.0.1 dev eth0 (VPN external IP)
128.0.0.0/1 via 10.8.3.1 dev tun0
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.20 metric 202
La configuration est la suivante :
net.ipv4.ip_forward = 1
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p icmp -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o tun0 -j ACCEPT
-A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
J'ai remarqué que lorsque le VPN est activé sur la station de travail, le routeur de mon FAI n'affiche pas l'adresse IP locale correcte de ma station de travail linux dans la liste des clients connectés. Parfois, elle est correcte, mais parfois elle ressemble à une adresse IP aléatoire.
Si j'ajoute la route suivante : EXTERNAL_IP via 192.168.0.1 dev eth0 (où EXTERNAL_IP est l'adresse IP du réseau étendu), je peux atteindre le serveur Web sur le réseau local, mais toujours pas depuis un autre réseau.