Reverse ssh : Accéder à un serveur derrière un NAT - Firewall
De wikiGite
Révision datée du 24 avril 2012 à 23:31 par Pierrick (discussion | contributions) (Page créée avec « Fichier:Reverse.png Le serveur A se trouvant derriere le par-feu créé un tunnel vers le serveur B. Depuis B on se connecte au serveur A au travers du tunnel ssh. == P... »)
Le serveur A se trouvant derriere le par-feu créé un tunnel vers le serveur B. Depuis B on se connecte au serveur A au travers du tunnel ssh.
Prérequis
Ajouter cette ligne dans /etc/ssh/sshd_config :
AllowTcpForwarding yes
Par sécurité créer un utilisateur dédié au tunnel sur B :
adduser userssh
Reverse ssh
Créez le tunnel sur le serveur A :
ssh -NR 22222:localhost:22 userssh@serveurB
Se connecter au tunnel depuis le serveur B
ssh -p 22222 rootA@127.0.0.1
Service au démarrage de A
aptitude install autossh
Générer une paire de clef avec root
ssh-keygen -t dsa
Faire un echange de clef avec le serveur B:
ssh-copy-id -i /root/.ssh/id_dsa.pub userssh@serveurB
ajouter dans /etc/rc.local :
autossh -i /root/.ssh/id_dsa -NR 22222:localhost:22 userssh@serveurB &
Se connecter à d'autres port
On souhaite par exemple se connecter à un serveur web se trouvant sur A.
Sur A :
ssh -NR 22280:localhost:80 userssh@serveurB
Sur B :
firefox "http://127.0.0.1:22280"