J'utilise pour me openconnect
connecter à vpn. Après avoir entré mes informations d'identification, je reçois ceci:
POST https://domain.name/...
Got CONNECT response: HTTP/1.1 200 OK
CSTP connected. DPD 30, Keepalive 30
Connected tun0 as xxx.xxx.xxx.xxx, using SSL
Established DTLS connection
En cours de ifconfig
spectacles, j'ai une nouvelle interface réseau tun0
avec une certaine adresse IP.
Question: Comment ssh
utiliser uniquement l’interface réseau tun0
pour pouvoir accéder aux ordinateurs de ce réseau privé?
Modifier:
Ma configuration réseau ( route -n
) semble être la suivante:
172.16.194.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet8
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.16.25.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet1
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 eth0
Réponses:
Ce n'est pas le client ssh qui décide via quelle interface les paquets TCP doivent passer, c'est le noyau. En bref, SSH demande au noyau d'ouvrir une connexion à une certaine adresse IP, et le noyau décide de l'interface à utiliser en consultant les tables de routage.
(Ce qui suit suppose que vous êtes sous GNU / Linux; le concept général est le même pour tous les Unices, mais les détails des commandes à exécuter et le format de la sortie peuvent varier.)
Vous pouvez afficher les tables de routage du noyau avec les commandes route -n et / ou ip route show .
OpenConnect aurait dû ajouter une ligne pour l'
tun0
interface; les connexions à toute adresse correspondant à cette ligne seront routées via cette interface. Par exemple,route -n
sur mon ordinateur portable, je reçois la sortie suivante:Cela signifie que les connexions aux hôtes du réseau 192.168.122.0/24 (c'est-à-dire les adresses 192.168.122.0 à 192.168.122.255 conformément à la notation CIDR ) seront routées via l'interface
virbr0
; ceux vers 169.254.0.0/16 et 10.30.0.0/24 seront acceptéseth0
, et tout le reste (la ligne 0.0.0.0) sera acheminé via eth0 vers l’ hôte de passerelle 10.30.0.1.la source
openconnect
n'a pas ajouté une ligne pour l'tun0
interface. Je suppose que je devrais le faire manuellement.Je ne sais pas quand il a été introduit, mais le client OpenSSH sur RHEL7 a cela dans sa page de manuel:
Pas aussi bon que de pouvoir choisir l'interface, mais proche.
la source
-B
indicateur, qui permet de spécifier le nom de l'interface réseau à utiliser.-b bind_address
n'a pas fonctionné pour moi, en quelque sorte. Changer de route temporairement devrait fonctionner. BTW: L'-B
option n'existe pas sur la version SSH fournie avec Ubuntu.Si vous utilisez Network Manager pour gérer vos connexions Internet (comme le gestionnaire par défaut sur de nombreux systèmes), vous pouvez installer à la fois
openconnect
etnetwork-manager-openconnect
.Une fois le plug-in OpenConnect installé pour Network Manager, ouvrez Network Manager et cliquez sur l' +icône en bas à gauche. Vous devriez recevoir une liste déroulante avec l’option VPN , puis la possibilité de sélectionner un VPN compatible OpenConnect .
En utilisant Network Manager pour établir une interface avec OpenConnect, vos itinéraires apparaissent automatiquement et vous aident à vous connecter au VPN. Ceci est particulièrement utile pour accéder aux serveurs via un réseau VPN, par exemple comment FireHost fait les choses.
la source
Juste addition d'une réponse. Vous pouvez utiliser
-b
flag et définir votre adresse IP source au moment de l'accès.Format + Exemple
la source