Faire du tunneling SSH entre un serveur Linux et un Client Windows

Il est parfois important de faire passer ses données via un tunnel SSH par exemple : Une connection Wifi (même avec une clef c’est pas sécurisé). Si vous avez besoin d’aller sur un site qui est fermé à cause d’un filtrage sur le réseau où vous êtes …

Dans ce tutoriel je vais prendre l’exemple d’une création de tunnel SSH pour communiquer avec mon proxy Squid qui est sur un de mes serveurs mais libre à vous de modifier ce tuto pour réaliser votre projet.

Explication du schéma : Le client Windows va se connecter au serveur Proxy 127.0.0.1:3128, ce port 3128 va taper dans celui du serveur SSH qui va être redirigé vers l’autre serveur WEB, les données passent par le serveur SSH via un Tunnel SSH.

1. Pré-requis

  • Un serveur Linux avec un serveur SSH installé
  • Un client Windows avec PuTTY installé (PuTTY est disponible ici)
  • Un serveur Squid (je répète, j’ai utilisé squid pour ce tuto mais libre à vous de choisir une autre appli)
  • Pourvoir communiquer sur le port SSH de votre machine distante (si réseau auquel vous êtes connecté le permet)

2. Configuration coté serveur

Coté serveur, si vous avez un serveur SSH fonctionnel, vous n’avez rien à faire.

3. Coté client Windows avec PuTTY

Comme si vous ajoutiez un hôte, allez dans l’onglet SSH puis Tunnels :

Port source est le port qui servira en local sur votre machine pour joindre l’adresse et port de destination (Destination). Une fois ces deux champs remplis, cliquez sur Add puis connectez-vous et identifiez-vous sur le serveur.

Votre tunnel est créé 🙂

4. Informations complémentaires

La création d’un Tunnel avec SSH ne s’arrête pas à Windows, on peut aussi le faire sous MAC OS (beurk) et avec un client Linux

Petit ajout (merci à Aeon) : Après cette démonstration, voilà pourquoi il peut être lourd en conséquences de donner accès SSH à votre machine.