web-dev-qa-db-fra.com

Impossible de SSH au serveur avec une connexion VPN

Ceci est assez foiré, je sais. Laissez-moi tout expliquer.

J'ai un DNS dynamique défini sur mon routeur. J'ai vérifié qu'après la redirection de port, je pouvais me connecter à l'application souhaitée (si j'exécute quelque chose sur le port 1337 et que je transfère le port sur la machine appropriée, je peux me connecter de l'extérieur sans aucun problème).

Maintenant, si je connecte mon Macbook à un réseau privé virtuel et exécute une opération telle que décrite ci-dessus, cela fonctionne comme prévu. MAIS, si je connecte ma machine exécutant Ubuntu Server 16.04 au VPN et que j'exécute quelque chose ou que je souhaite me connecter par ssh, cela échoue. J'ai transféré le port que j'utilise pour la connexion SSH sur le routeur. J'ai également essayé d'héberger un serveur Web, qui a également échoué.

Que puis-je faire à propos de ce problème? Cela n'a pas de sens pour moi.

À propos de la machine Ubuntu Server: il s’agit d’une installation propre avec un client OpenVPN et un serveur SSH configurés, aucun pare-feu n’exécute, iptables non modifié, connecté au routeur via Ethernet.

EDIT: Voici les tables de routage: http://Pastebin.com/ay6fpLcL

9

OK, j'ai réussi à trouver une solution.

Utilisation du package openvpn sans wrappers:

Ajoutez ces 2 lignes à votre fichier .ovpn (ou .conf si vous vous connectez automatiquement):

script-security 2
up /etc/openvpn/up.sh

Ensuite, créez /etc/openvpn/up.sh avec des autorisations exécutables (755/700):

#!/bin/sh
ip rule add from <your-server-ip> table 128
ip route add table 128 to <your-server-subnet> dev <your-interface>
ip route add table 128 default via <server-gateway>

Par exemple, voici ma configuration:

#!/bin/sh
ip rule add from 192.168.1.26 table 128
ip route add table 128 to 192.168.1.0/24 dev eno1
ip route add table 128 default via 192.168.1.1

Utilisation d'un client VPN différent/configuration différente:

Je ne peux pas prédire les étapes requises, mais vous devez généralement exécuter le script up.sh (ci-dessus) chaque fois que votre connexion VPN est établie.

J'espère que ça aide quelqu'un qui a le même problème. À votre santé!

6