Le serveur SSH ne peut pas être connecté lorsque le VPN est activé

9

J'ai récemment découvert que lorsque ma station de travail se connecte via une connexion VPN, son serveur SSH ne peut pas être connecté à partir d'un site distant. Je suis sûr que c'est un problème de routage car le client VPN change la passerelle par défaut en son homologue (serveur VPN) de la connexion ppp.

Existe-t-il une solution pour satisfaire le serveur SSH et le client VPN?

btw0
la source

Réponses:

2

Lorsque vous utilisez un vpn en général, le réseau vpn prend en charge l'intégralité de votre interface de sorte que vous ne pouvez être routé que quelque part sur le réseau vpn, pas Internet en général. La plupart des gens résolvent ce problème en exécutant un vm (virtualbox, etc.) et en se connectant au vpn dans cette machine virtuelle afin qu'il ne flexible pas complètement la connexion principale sur la machine réelle.

Stu
la source
Vous pouvez faire quelques astuces de routage pour acheminer les données du vpn dans un sens et d'autres données dans l'autre sens (différentes passerelles, etc.) mais c'est vraiment beaucoup plus facile à utiliser virtualbox. :-)
Stu
Merci pour la suggestion! Je voudrais savoir quelle astuce de routage peut y parvenir.
btw0
J'utilise VM stu, mais ce que je ne peux pas faire, c'est évaluer le VPN dans l'hôte, car je dois faire du travail de développement.
Jamie Hutber
oh, je proposais l'autre sens. Utilisez le vpn uniquement dans le vm et cela laisse la machine reak pour Internet ouvert et gratuit.
Stu
2

Avant de vous lancer dans les configurations réseau, vérifiez si le serveur ssh en question écoute sur l'interface vpn. Peut-être qu'il est lié à une interface spécifique sur votre serveur.

Exemple de netstat -asortie:

 Proto Recv-Q Send-Q Local Address    Foreign Address   State      
 tcp        0      0 *:ssh            *:*               LISTEN      

Le serveur ssh dans cet exemple écoute sur toutes les interfaces (indiqué par l'astérisque *:ssh. Si sur votre système il y a une adresse d'hôte à la place, le serveur ssh est lié à des interfaces spécifiques.

Modifiez /etc/ssh/sshd_configet réglez ListenAddress 0.0.0.0pour régler cela, si nécessaire.

Si sshd écoute déjà les bonnes interfaces, n'hésitez pas à entrer dans le donjon de routage :-)

ktf
la source
1
À quelle adresse doit- ListenAddresson régler? L'IP du serveur sur l'interface locale? L'IP du routeur? Autre chose?
Psychonaut
0

Vous parlez de tunneling divisé. Si vous connaissez suffisamment l' outil de ligne de commande ROUTE.EXE , vous pourrez peut-être examiner les itinéraires placés par le client VPN et les supprimer. Vous en ajouteriez ensuite un pour autoriser uniquement le trafic vers votre réseau local d'entreprise à traverser la passerelle VPN.

Plus précisément, vous utiliseriez

route print

... pour obtenir une liste des entrées de routage. Sans voir la sortie, il semble que votre client VPN aurait placé une entrée par défaut (0.0.0.0) avec la passerelle étant la passerelle homologue VPN. Vous pouvez utiliser

route delete 10.*

... par exemple, pour supprimer toutes les entrées pointant vers un réseau 10.xxx.

Vous pouvez ensuite utiliser

route add 10.0.0.0 mask 255.0.0.0 10.0.99.99

... où la première adresse (10.0.0.0 255.0.0.0) est votre réseau et masque d'entreprise, et la deuxième adresse est la passerelle distante.

Vous devrez l'exécuter à chaque fois que vous vous connectez, vous pouvez donc vouloir l'écrire.

Note latérale: une alternative serait de convaincre votre entreprise de configurer son VPN pour utiliser le tunneling fractionné; un argument en faveur de cela est une bande passante réduite et (IANAL) une responsabilité réduite pour le trafic Web non d'entreprise transitant par leur réseau.

Geoff
la source