17/06/2020, 09:17:01
Je considère que mes machines sont :
- HostA, toi depuis n'importe où dans le monde
- HostB, ton PC chez toi
- Server, ton serveur sur lequel tu vas établir tes connexions SSH (que ce soit depuis HostA ou HostB)
Sur HostB, tu ouvres une connexion sur un port de ton choix (54321 dans mon exemple) vers ton serveur SSH local, sur Server :
A ce moment, si tu fais un netstat -tap sur Server, tu verras ta connexion active sur le port 54321.
Sur HostA, tu lances un SSH tunneling classique qui indique que tu utilises ton port local 22, qui va te forward le port de l'hôte distant "localhost:54321", vers Server :
Avec cette connexion tu vas te retrouver connecté en ssh à Server, tu laisses ton shell ouvert, et sur HostA tu ouvres un autre shell dans lequel tu établis ta connexion vers HostB via Server :
Evidemment je donne l'exemple pour SSH, mais tu peux remplacer ton port local sur HostA par le port de ton choix, et connecter autre chose qu'un SSH
- HostA, toi depuis n'importe où dans le monde
- HostB, ton PC chez toi
- Server, ton serveur sur lequel tu vas établir tes connexions SSH (que ce soit depuis HostA ou HostB)
Sur HostB, tu ouvres une connexion sur un port de ton choix (54321 dans mon exemple) vers ton serveur SSH local, sur Server :
Code :
ssh -nNT -R 54321:localhost:22 user@Server
A ce moment, si tu fais un netstat -tap sur Server, tu verras ta connexion active sur le port 54321.
Sur HostA, tu lances un SSH tunneling classique qui indique que tu utilises ton port local 22, qui va te forward le port de l'hôte distant "localhost:54321", vers Server :
Code :
ssh -L 22:localhost:54321 user@Server
Avec cette connexion tu vas te retrouver connecté en ssh à Server, tu laisses ton shell ouvert, et sur HostA tu ouvres un autre shell dans lequel tu établis ta connexion vers HostB via Server :
Code :
ssh user@localhost
Evidemment je donne l'exemple pour SSH, mais tu peux remplacer ton port local sur HostA par le port de ton choix, et connecter autre chose qu'un SSH