GNU/Linux >> Tutoriels Linux >  >> Linux

Connexion SSH via un tunnel SSH inversé (distant)

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 :

  1. 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 :

  1. 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.


Linux
  1. Ssh - Bureau à distance sur tunnel inverse Ssh pour remplacer Teamviewer ?

  2. Ssh – Trafic de tunnel via une autre machine via Ssh ?

  3. Comment puis-je tunneliser tout mon trafic réseau via SSH ?

  4. Tunnel SSH HTTPS

  5. comment tunneliser Windows Remote Desktop via ssh à l'aide d'une machine Linux?

Un guide du débutant sur SSH pour la connexion à distance sous Linux

Ssh – Comment fonctionne le tunneling Ssh inversé ?

Comment se connecter à Internet via un serveur distant via une connexion Ssh ?

Comment configurer une connexion MySQL distante sécurisée

Transférer SSH via un tunnel SSH

Copier les données via le tunnel SSH sur plusieurs sauts