Configurer un tunnel SSH sur un poste client, puis le proxy Firefox
Quand on bosse avec des freelances, qui se trouvent à différents endroits du monde leur accès à internet peut-être plus ou moins aléatoire. En ce moment je rencontre le problème suivant:
Nous utilisant un service en s’appuyant sur leur API. Mais l’accès au différentes ressources est restreinte selon l’IP cliente. Pour peu que l’on se trouve derrière une IP dynamique et cela devient problématique…
Au moin deux solutions peuvent être mise en oeuvre pour contourner le problème:
- Utilisation d’un VPN
- Utilisation d’un Tunnel SSH
Le choix a été fait d’utiliser un tunnel SSH, car plus simple, selon moi, à mettre en œuvre, surtout si le besoin est de fixer l’adresse IP de la machine cliente. L’installation est simple pour le client, un client ssh est disponible sur une machine Linux, et l’utilitaire putty sous Windows permet de faire cela simplement. Le tunnel SSH créer un proxi local sur la machine cliente client convient de préciser au programme dont on souhaite qu’il utilise le tunnel
Configuration du tunnel SSH
Configuration du tunnel SSH sous Windows:
Récupérer putty, et configurer une connexion SSH classique:
- Host Name (or IP adress)
- Port si le serveur SSH n’écoute pas sur le port 22
- Source Port, une valeur arbitraire mais doit être libre sur la machine cliente
- Destination, identique à Host Name, préciser le port si différent de 22 (après les deux points)
- Et enfin choisir Dynamique

Pour finir Cliquez sur le bouton ADD pour ajouter le tunnel. Pour ouvrir le tunnel cliquer sur Open.
Configuration du Tunnel sous Linux
Avec ssh:
ssh -D1080 user@destination:port
Le port est facultatif si égal à 22.
Le paramètre -D est pour définir une connexion dynamique.
Enfin 1080, est le Source Port, une valeur arbitraire pourvu que ce soit un port libre la machine cliente.
Configuration du proxy sous Firefox
Une fois le tunnel établi il se comporte comme un proxy sur la machine locale: exemples de configuration avec Firefox:

Se rendre dans Paramètre > Avancé > Réseau, dans la section Connexion cliquer sur paramètres:

Sélectionner « Configuration Manuelle du Proxy« , dans Hôte SOCKS saisissez « localhost« , SOCKS v5 et dans le champ Port mettre Source Port précédement défini.
Puis valider par OK. Tant que le proxy sera actif toute les connesxions initialiser par Firefox passerons désormais par le tunnel SSH.
Elle est pas belle la vie 🙂