Ce que vous faites référence est "SSH REMOTE FORWARDING", et est correctement expliqué dans le "man ssh ", concernant le "-R ".
> man ssh
[...]
-R [bind_address:]port:host:hostport
Specifies that the given port on the remote (server) host is to
be forwarded to the given host and port on the local side.
This works by allocating a socket to listen to port on the remote
side, and whenever a connection is made to this port, the
connection is forwarded over the secure channel, and a connection is
made to host port hostport from the local machine.
[...]
Dans votre contexte, où :
- une machine Linux A (LINUX_BOX_A) à l'intérieur d'un LAN derrière un pare-feu.
- un serveur Linux B (SERVER_B) avec une IP fixe accessible depuis Internet
Le transfert à distance SSH peut être utilisé pour atteindre LINUX_BOX_A depuis SERVER_B. La seule condition est :LINUX_BOX_A DOIT pouvoir se connecter via SSH à SERVER_B.
Pour atteindre cet objectif, vous avez besoin :
- sur LINUX_BOX_A :
LINUX_BOX_A:~ $ ssh -R 2222:localhost:22 [email protected]_B
cela ouvrira une connexion ssh de LINUX_BOX_A à SERVER_B qui sera utilisée pour la connexion distante entrante.
Une fois la connexion ssh ci-dessus établie, vous pouvez :
- sur SERVER_B :
SERVER_B:~ $ ssh -p 2222 [email protected]
une telle connexion ssh, lancée sur SERVER_B, sera dirigée vers le port 2222 écoutant sur localhost qui... est lié à la connexion ssh précédente. Ce sera donc une "connexion ssh dans une autre connexion ssh".
Quelques remarques supplémentaires :
-
considérez que si la première connexion ssh expire et/ou tombe pour une raison quelconque (y compris :tuée par un pare-feu local, en raison de l'inactivité), vous ne pourrez pas effectuer de transfert à distance/remotely_connect ;
-
comme il est important de laisser la première connexion ssh active pendant très longtemps, il peut être utile de lancer un tel ssh dans une session "écran"
Une dernière note :Évidemment, tout ce qui précède a des implications (potentiellement graves) en matière de sécurité qui sortent du cadre de cette réponse.