Créer un tunnel SSH

Les bases pour monter un tunnel SSH avec forward de port
Cette commande permet de créer un tunnel vers un serveur caché derrière un firewall offrant une connexion SSH

ssh -N -L$port_locale:$serveur_interne:$port_serveur $login@$serveur_passerelle &

Par exemple :

  • la passerelle est gw.domain.net
  • le serveur interne offre un service HTTP sur le port 80 et s’appelle cache.domain.net
  • votre login est bob sur la passerelle est bob.
  • vous voulez accéder localement au service sur le port 8080 (ce port est libre à priori) (>1024 = evite d’avoir les droits root pour lancer la commande)

La commande est :

ssh -N -L8080:cache.domaine.net:80 bob@gw.domain.net &

maintenant dans votre navigateur si vous taper :

http://localhost:8080

vous pourrez surfer de façon sécurisée comme si vous étiez connecté en interne.

ps : Il est préférable de configurer la connexion ssh avec une authentification par clé RSA pour ne pas taper le mot de passe d’authentification.
ps2 : cette technique est applicable a bien d’autres services…