wiki:Realisations/2010-2011/Projet/Documentation/SSH

Version 2 (modified by teste, 14 years ago) (diff)

--

Création d'un tunnel SSH depuis l'extérieur vers un AS

La plateforme est isolée de l'Internet.

Il est cependant possible d'accéder aux machines des AS depuis l'extérieur via un tunnel SSH.

Voici le nom des machines mises à contribution:

Nom Adresse Description
maison 127.0.0.1 Ordinateur initiant la connexion depuis l'extérieur
sphinx sphinx.lip6.fr Serveur d'entrée SSH dans le LIP6
gate-net gate-net.rsr.lip6.fr Passerelle d'entrée dans la plateforme
cible @cible (variable) Machine sur laquelle on veut se connecter

Il faut d'abord choisir un port local pour chaque port distant sur lesquels on veut accéder.

Dans cet example on veut accéder aux fonctionnalités d'un serveur ProxMox: HTTPS (443) et VNC (5900).

On va les mapper sur les ports 1900 et 1901:

Port local Port distant
1900 443
1901 5900

La jonction se fait en deux étapes:

  • Tunnel entre sphinx et cible:
    • Ecoute sur les ports 1900 et 1901 du trafic loopback
    • Redirection du trafic loopback depuis les ports 1900 et 1901, vers les ports 443 et 5900 de cible, via gate-net
  • Tunnel entre maison et cible:
    • Ecoute sur les ports 1900 et 1901 du trafic loopback
    • Redirection du trafic loopback depuis les ports 1900 et 1901, vers les ports 1900 et 1901 de sphinx, via sphinx

Tunnel entre sphinx et la cible

Le tunnel se fait entre sphinx et la machine cible, en passant par gate-net.

Après s'être connecté en SSH sur sphinx (ssh utilisateur@…):

ssh -N -f utilisateur@gate-net.rsr.lip6.fr -L 1900:@cible:443 -L 1901:@cible:5900

À partir de ce moment on ne peut pas encore accéder à notre machine. Bien que sphinx se soit mis en écoute sur les ports 1900 et 1901, il ne l'a fait que localement. Il serait bien trop dangereux d'exposer ces ports à tout le monde sur Internet.

On peut s'en rendre compte facilement en regardant les ports en écoute sur sphinx:

netstat -an | grep -i LISTEN

Tunnel entre la maison et sphinx

Pour ce tunnel, on va rediriger l'adresse de loopback locale vers sphinx.

Depuis la maison:

ssh -N -f utilisateur@sphinx.lip6.fr -L 1900:localhost:1900 -L 1901:localhost:1900

Maintenant il suffit d'accéder à sphinx avec le port lié à HTTPS: https://sphinx.lip6.fr:1900/ .