Scénario:
- À mon bureau avec un ordinateur portable branché sur Ethernet et connecté à un serveur distant via SSH
- Vous souhaitez passer d'un autre côté du bureau avec un ordinateur portable et passer au WiFi sans interrompre la connexion SSH
J'ai essayé: d'abord de me connecter au WiFi, puis de déconnecter Ethernet; et aussi déconnecter ethernet d'abord puis se connecter au WiFi. Aucune approche ne fonctionne. A également essayé lors de l'utilisation des serveurs Ubuntu et OS X ainsi que des deux options de système d'exploitation pour le client. Pas de chance.
Il semble que j'ai besoin d'un moyen de dire à ma connexion SSH qu'elle devrait commencer à utiliser l'interface réseau nouvellement connectée au lieu de l'ancienne interface déconnectée. Des idées?
Je me rends compte que je pourrais rester sur le WiFi toute la journée, mais je ne veux pas faire ça. Je me rends également compte que je peux simplement travailler à partir d'une session d'écran sur le serveur distant, puis me reconnecter à cette session d'écran après avoir changé d'interface, mais je ne veux pas non plus le faire. Par exemple, je pourrais être en train de diriger une grosse commande comme un vidage de base de données sur SSH ou je pourrais avoir des fichiers ouverts via SSHFS, ou je pourrais simplement éviter la nuisance de se reconnecter
Réponses:
Je soupçonne que cette solution ne fonctionnera pas pour SSHFS, etc., mais vous pouvez jeter un œil à Mosh qui fournit un support d'itinérance pour au moins le shell lui-même.
la source
Je crains que vous ne puissiez pas faire cela, par définition. Une session SSH s'exécute sur une connexion TCP, qui est définie par le quadruple (adresse source, port source, adresse de destination, port de destination). Vous ne pouvez pas déplacer la connexion existante vers une adresse différente sur le client (à part le fait que le système d'exploitation va interrompre la connexion lorsque l'interface tombe en panne).
NAT peut compliquer cette image, mais en aucune manière qui vous aidera.
la source
Vieux fil, je sais, mais par souci d'exhaustivité puisque je cherchais la même chose ...
Dans Windows 7 ou plus récent, vous devriez simplement être en mesure de sélectionner à la fois votre adaptateur wifi et votre adaptateur Ethernet et choisissez "Connexion Bridge". Cela vous donnera une seule adresse IP pour les deux, et vous pourrez désormais déconnecter et reconnecter Ethernet à volonté (avec une couverture wifi continue).
la source
Je gère cela de deux manières:
Démarrez la session à partir d'un serveur Terminal Server dans votre centre de données (RDP / Windows / etc)
OU
Installez l' écran GNU ou tmux et démarrez-les après la connexion.
Je préfère
tmux
parce quescreen
c'est assez old school, mais si vous n'êtes autorisé qu'à installer des packages pris en charge,screen
c'est dans le repo RHEL.OU
Faire les deux.
la source
tmux
est vraiment pratique. Exécuter des trucs distants à l'intérieurtmux
est une excellente habitude.Cela ne peut pas se faire facilement.
Je peux vous indiquer un certain nombre d'applications très coûteuses qui vous permettent de conserver une session Telnet ou SSH lorsque vous vous déplacez entre IP ou AP, ou même pendant des périodes de déconnexion réseau prolongées, mais elles y parviennent essentiellement en créant un serveur toujours ouvert. -side session pour la machine cliente afin que le serveur ne sache pas que la connexion est différente ou abandonnée.
Je suppose que vous pourriez coder une telle chose, mais j'imagine que si c'était facile à faire, mes clients ne seraient pas violés avec des coûts à 5 chiffres pour garder leurs connexions terminales ouvertes sur les scanners portables sans fil.
Cependant, je suis tombé sur un écran, qui prétend créer des sessions SSH persistantes , ce qui peut réellement fonctionner ... essayez-le.
la source
Le problème est probablement que votre adresse IP source change lorsque vous basculez entre câblé et wifi. Cela empêchera les sessions ssh de revenir.
J'ai géré cela sous linux en me connectant via un vpn et en m'assurant que la connexion vpn donne toujours la même ip à votre compte (pas difficile à appliquer, mais il y a de fortes chances que vous receviez la même ip sur vpn déjà par défaut de toute façon si c'est disponible, mais il vaut mieux l'appliquer pour être sûr). J'utilise principalement vtun, mais openvpn est ok aussi. Assurez-vous que vos connexions passent par le vpn (routage correct, préfixes poussés, ...)
J'ai pu être déconnecté du câble pendant 5 minutes, puis me connecter au wifi et pouvoir rester connecté à toutes mes sessions ssh. Ping continu, mtr, htop, ... continuez simplement lorsque le vpn est restauré comme si de rien n'était.
la source
Essayez d'être uniquement sur wifi lorsque vous démarrez la session ssh pour la première fois. Ensuite, branchez votre Ethernet. Cela devrait permettre à de nouvelles connexions de passer par Ethernet, mais la connexion établie restera sur le wifi. Au moins, je l'ai vu fonctionner comme ça avec OSX, donc le système d'exploitation / matériel peut varier.
la source
Je suis presque sûr que vous pouvez le faire avec une quantité stupide de piratage avec VM et Tunneling.
Ce n'est pas testé, mais faites-moi savoir si cela fonctionne vraiment.
ssh -L 10022:remote.server.example.com:22
ssh 192.168.56.3 -p 10022
laisse moi savoir si ça fonctionne.
la source