Tunnel SSH avec l'option -D
Par Yannick le samedi, 22 avril 2006, 15:42 - Sécu - Lien permanent
Ce billet présente l'utilisation de l'option -D de la commande ssh.
Pour illustrer cette option, prenons le cas ou vous êtes dans un réseau "non sûr" et que vous voulez surfez sans que le réseau dans lequel vous êtes puisse trop vous surveiller...
Prérequis: vous avez une machine chez vous en adsl sur laquelle écoute un serveur SSH (de préférence sur le port 80 ou 443 dans notre exemple) mais sur laquelle il n'y a pas besoin d'avoir un Squid ou autre...
Il suffit alors de monter un tunnel SSH vers le serveur à la maison (même à travers un proxy Http) et de surfer à l'intérieur du tunnel pour sortir réellement sur le net par la ligne de la maison...
-D port
Specifies a local "dynamic" application-level port forwarding. This works by allocating a socket to listen to port on the local side, and whenever a connection is made to this port, the connection is forwarded over the secure channel, and the application protocol is then used to determine where to connect to from the remote machine. Currently the SOCKS4 and SOCKS5 protocols are supported,[...]
- Le petit dessin illustrant la communication de l'exemple ci-dessous:

- On lançe sur la machine client la commande SSH:
ssh -D 1111 -p 443 login@srvMaison
- Il suffit ensuite de configurer notre client Http (Firefox) pour utiliser un proxy Socks sur le serveur 127.0.0.1 sur le port 1111
- Fin:
Nous surfons donc sans que le réseau dans lequel nous sommes ne puisse voir les sites où nous allons...
...et ceci sans utiliser rien d'autre qu'un serveur SSH "perso"...
- La même chose en graphique avec putty:
- Et les autres applis ne pouvant pas être configurées pour utiliser un proxy SOCKS ?
ahhhh... eh bien c'est possible aussi... et c'est l'objet du billet suivant :)
- PS: Attention à la confidentialité des requètes DNS qui ne passent pas dans le tunnel...


Commentaires
Gros merci pour ce tuto, voila quelques temps que j'utilise putty sous windows. Pour la création du tunnel, seul un auto D1111 suffisait.
Je teste une version ubuntu 6.06 dernierement ( pc virtuel ) et le fait de forcer IPV4 avec 4D1111 sous putty marche parfaitement, toujours à travers le proxy de ma boite ;-). Merci à toi pour ce billet et ton site en général.
Merci pour ce feedback et pour les compliments :)