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…