web-dev-qa-db-fra.com

Connecté à openvpn, mais pas de connexion Internet

J'ai openvpn sur un serveur distant, c'est Arch Linux. Je suis en mesure de me connecter, mais il n'y a pas d'Internet après ma connexion, ce qui signifie que lorsque j'ouvre un navigateur et que j'essaie de charger un site Web, il se met à "rechercher ..."

Aucune erreur de chaque côté. Le serveur n'est pas derrière NAT, autant que je sache, je suis - un client - l'est.

Pas de pare-feu sur le serveur.

Quelque chose lié au routage, au transfert je pense?

4
Jodarim255

Lorsque vous créez une connexion VPN entre votre client et votre serveur VPN, un réseau privé se forme entre les deux, avec une adresse commençant par 192.168.x.x, 10.x.x.x ou 172.16.x.x.

Lorsque vous souhaitez acheminer le trafic du client VPN vers Internet global, vous devez utiliser NAT sur le serveur afin qu'il traduise l'adresse réseau privée du client VPN en adresse IP publique du serveur.

Ceci est indépendant du fait si la connexion de votre client est derrière NAT ou non.

Donc, en plus d'installer le logiciel VPN, vous devez ajouter des règles de pare-feu pour NAT dans votre serveur.

2
Tero Kilkanen

J'ai vérifié vos journaux et je n'ai trouvé aucun problème. Mais vous avez dit qu'il y a No firewall on the server. Cela pourrait provoquer des problèmes, car vous devez activer le transfert pour le NAT fonctionnel. Voici la sortie de guide .

ufw

Afin de configurer vos paramètres ufw pour le trafic VPN, ajoutez d'abord ce qui suit à/etc/default/ufw:

DEFAULT_FORWARD_POLICY="ACCEPT"

Modifiez maintenant /etc/ufw/before.rules et ajoutez le code suivant après l'en-tête et avant la ligne "* filter". N'oubliez pas de changer le masque IP/sous-réseau pour qu'il corresponde à celui dans /etc/openvpn/server/server.conf. L'ID de l'adaptateur dans l'exemple est génériquement appelé eth0, modifiez-le en conséquence pour votre système.

/etc/ufw/before.rules

# NAT (Network Address Translation) table rules
*nat
:POSTROUTING ACCEPT [0:0]

# Allow traffic from clients to eth0
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

# do not delete the "COMMIT" line or the NAT table rules above will not be processed
COMMIT

Ouvrez le port OpenVPN 1194:

# ufw allow 1194

Enfin, rechargez UFW:

# ufw reload

iptables

Afin d'autoriser le trafic VPN via votre pare-feu iptables de votre serveur, créez d'abord une règle iptables pour NAT transfert [3] sur le serveur, en supposant que l'interface que vous souhaitez transférer est nommée eth0:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Et n'oubliez pas d'activer le transfert dans sysctl

sysctl -w net.ipv4.ip_forward=1
9