Ceci est une ancienne révision du document !
Les serveurs de travail (calculs, prévisualisation, données) sont parfois derrières plusieurs firewall ou passerelles (ou rebonds SSH, hop 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.
Légende :
Le Poste Chercheur cherche à joindre le serveur vizu.psmn à travers 2 passerelles SSH (chemin rouge).
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)
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
sur postechercheur
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
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 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.
Voir l'usage de plink et PuTTY