J'ai un openVPN configuré sur le serveur et j'utilise openVPN connect pour mon client. J'ai certains sites Web internes auxquels j'ai besoin d'accéder et certains d'entre eux ne fonctionnent pas. Je veux m'assurer que lorsque le trafic passe par le VPN et non par la connexion Internet normale. L'IP de passerelle pour mon réseau est 192.168.0.1 et la passerelle pour openVPN est 10.8.0.1. J'ai fait une trace d'itinéraire et cela montre que les sites Web qui ne fonctionnent pas accèdent à 192.168.0.1 et non à 10.8.0.1. Comment pourrais-je forcer tout le trafic à travers le VPN? J'utilise Windows 7 en tant que client et Ubuntu 10.04 pour le serveur.
À partir de OpenVPN HowTo Documentation
La mise en oeuvre
Ajoutez la directive suivante au fichier de configuration du serveur:
Appuyez sur "redirect-gateway def1"
Si votre configuration VPN est sur un réseau sans fil, où tous les clients et le serveur sont sur le même sous-réseau sans fil, ajoutez l'indicateur local:
Appuyez sur "redirect-gateway local def1"
En poussant l'option de passerelle de redirection vers les clients, tout le trafic réseau IP provenant des machines clientes passera par le serveur OpenVPN. Le serveur devra être configuré pour gérer ce trafic d'une manière ou d'une autre, par exemple en le NATant sur Internet ou en le routant via le proxy HTTP du site du serveur.
Sous Linux, vous pouvez utiliser une commande comme celle-ci pour NAT le trafic client VPN vers Internet:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Cette commande suppose que le sous-réseau VPN est 10.8.0.0/24 (tiré de la directive serveur dans la configuration du serveur OpenVPN) et que l'interface Ethernet locale est eth0.
Lorsque la passerelle de redirection est utilisée, les clients OpenVPN achemineront les requêtes DNS via le VPN et le serveur VPN devra les gérer. Cela peut être accompli en poussant une adresse de serveur DNS vers les clients de connexion qui remplaceront leurs paramètres de serveur DNS normaux pendant la durée d'activation du VPN. Par exemple:
Appuyez sur "dhcp-option DNS 10.8.0.1" pour configurer les clients Windows (ou non-Windows avec des scripts supplémentaires côté serveur) pour utiliser 10.8.0.1 comme serveur DNS. Toute adresse accessible depuis les clients peut être utilisée comme adresse de serveur DNS.
Si vous souhaitez configurer cela côté client, mettez
redirect-gateway def1
dans votre fichier client.ovpn.
J'ai eu le même problème mais la solution décrite ci-dessus n'a pas fonctionné pour moi. Dans ma configuration openvpn, je devais écrire
redirection-passerelle def1
sans le Push et sans les guillemets - alors cela a fonctionné.
Le client était Windows 10 1607 avec OpenVPN 3.2.12.