Ceci est une ancienne révision du document !


Multi-hop SSH

under construction

Les serveurs de travail (calculs, prévisualisation, données) sont parfois derrières plusieurs firewall ou passerelles (ou rebonds SSH, “hops” en anglais). La documentation SSH explique comment passer une seule passerelle (option ProxyCommand). Il est possible de cumuler ce système de “saut de passerelle” plusieurs fois. Pour l'exemple, nous allons utiliser le réseau illustré ci-après.

Connection from "poste Chercheur" to front machine "vizu.psmn" via multihop SSH

Caption :

  • noir : physical link
  • bleu : standard ssh connection
  • rouge : virtual ssh connection (multi-hop)
  • vert : NFs links (/home)

The Poste Chercheur (your computer!) tries to join the server vizu.psmn through 2 SSH gateways (red path).

From au Mac/Linux/BSD machine

Manual multihop

On va cumuler les connexions “à la main” (chemins bleus) :

user@postechercheur:~$ ssh ssh.ens-lyon.fr
user@ssh.ens-lyon.fr:~$ ssh allo-psmn
user@allo-psmn:~$ ssh vizu.psmn
user@vizu.psmn:~$

C'est automatisable. (Il est en plus impossible de copier des fichiers avec scp depuis postechercheur vers vizu.psmn, les machines passerelles ayant des /home de petite taille)

Automated multihop

Il faut ajouter les entrées pour les passerelles et le serveur visé dans le fichier ~/.ssh/config du postechercheur. En cumulant les différentes connexions au fur-et-à mesure.

  • ~/.ssh/config file on postechercheur
~/.ssh/config
Host ssh-ens
  User user
  HostName ssh.ens-lyon.fr

Host allo-psmn
  User user
  ProxyCommand ssh -qt ssh-ens tcpconnect allo-psmn.ens-lyon.fr %p

Host vizu.psmn
  User user
  ProxyCommand ssh -qt allo-psmn netcat -w1 vizu.psmn.ens-lyon.fr %p

(Un fichier plus complet est disponible sur cette page)

Voilà. Vous pouvez maintenant vous connecter sur vizu.psmn depuis postechercheur en une seule commande :

user@postechercheur:~$ ssh vizu.psmn

user@vizu.psmn:~$

Cela est bien sûr valable aussi pour la commande scp.

La configuration et les explications sur l'automatisation des étapes de login avec un agent-ssh est expliqué sur cette page.

From a Windows machine

Multi-hop with PuTTY (Windows)

See the use of plink & PuTTY

en/documentation/tutorials/ssh/multihop_ssh.1513853231.txt.gz · Dernière modification : 2020/08/25 15:58 (modification externe)