Login

[Tuto] Tunnel SSH et Firefox & Co

Posté par : farwarx - Le Jeudi 8 Janvier 2009 à 17:46

Bonjour à tous et à toutes!

 

Je ne vais pas vous expliquer les tunnels SSH, NON!!!! Vous avez un nouvel ami pour ça:

 

Je vais plutôt vous expliquer comment configurer, créer et utiliser un tunnel SSH.

 

Qu'est ce qu'un tunnel?

Un tunnel est comme son nom l'indique..... un tunnel....

Dans la vie courante, cela permet de faire passer des voitures sous une montagne, évitant ainsi de perdre du temps à passer par dessus.

Dans l'informatique c'est pareil... ou presque.

On créé un tunnel entre deux machines (côtés de la montagne) pour faire transiter du traffic (les voitures et les camions) dans le but de.....pas de gagner du temps (les comparaisons s'arrêtent là) mais plutôt dans l'optique de faire passer des produits stupéfiants (dans les voitures et les camions).

 

J'entends par là, dissimuler des choses car c'est interdit ou car on est obligé (exemple avec ipv6).

Dissimuler par une méthode de chiffrement.

 

Avec quoi créer un tunnel?

Avec des logiciels.....

Vous pourrez donc créer des tunnels avec des logiciels comme puTTY, ssh, gstm pour Gnome, et tous les logiciels de VPN que vous connaissez.

Un VPN n'est ni plus ni moins, qu'une succession de tunnels qui relient les machines entres elles.

Hamachi permet de faire des tunnels par exemple. Si vous êtes interessé par ce logiciel, une petite recherche et vous trouverez ce bon tutoriel.

 

Pourquoi SSH?

SSH est un Shell Sécurisé, d'où son nom en anglais: Secure Shell. (je sais, je sais....)

Je vais utiliser SSH car sa particularité est qu'il encrypte la connexion entre les deux machines.

Vous aurez donc un tunnel, qui plus est, sera crypté!!!! Ca existe et ça va vite, alors pourquoi s'en privé?

Les clients SSH ont le bonheur d'être présent facilement sur la plupart des systèmes.

Néanmoins, le serveur SSH (on aura besoin d'un serveur) est plus présent dans les systèmes de types UNIX/Linux que Windows.

 

Quel type de tunnel?

Un tunnel est un tunnel, appelons les choses comme elles le sont!

Mais c'est ce que l'on en fait qui vont changer ce type là.

Nous pouvons rediriger un port en particulier d'une machine vers une autre.

Nous pouvons interconnecter des réseaux privés entre eux à distance (VPN).

Nous pouvons créer un SOCKS pour faire transiter notre traffic (internet, messagerie...) via notre tunnel vers le serveur à distance.

Et sans doute d'autres types..... (pas des gars méchants, des types de tunnel!)

 

Je vais vous montrer comment utiliser un tunnel avec le SOCKS 5.

 

Ce dont on a besoin:

Serveur SSH

Pour ma part ce sera un serveur "sshd" sur un système Linux/Debian ou Linux/Ubuntu.

Il doit autoriser les tunnels (par défaut).

Le port d'écoute est par défaut le port 22 mais il est préférable de le changer (attaques SSH par des botnets, xmco).

Pour m'a part j'utilise un autre port.

Pour ce tutoriel, on va dire que le serveur SSH aura cette configuration:

  • IP: 194.100.200.1 (ip publique)
  • Port d'écoute: 22222
  • Firewall: autorise les connexions sur le port 22222

 

Bien entendu, si cette machine est dans un réseau privé, il faut qu'elle soit accéssible sur Internet, donc ouverture des ports sur votre Box ou Routeur.

 

Client SSH

Je vais vous montrer comment utiliser:

  • puTTY pour Windows XP (version 0.60)
  • ssh (en ligne de commande) pour Linux
  • gSTM : Gnome SSH Tunnel Manager (interface graphique) pour Linux

 

Qu'est ce qu'il va ce passer une fois le tunnel créé, je vais être aspiré dans le fin fond du Net?

NON vous n'allez pas être aspîré!!!!

Vous pouvez essayer de chercher le Bout du Net .....

 

Une fois créé, le tunnel est invisible pour vos yeux ébahis!

Vous surferez normalement, vous irez sur Kookyoo.net comme toutes les 5 minutes....

 

Mais alors, il sert à quoi ton tunnel? A troué le net?

Non bien sûr ;)

Vous pourrez configurer votre naviguateur, client de messagerie, client de messagerie instantanée pour qu'ils utilisent le tunnel!!!

Dès lors, tout ce que vous ferrez sera crypté!!! Adieu le sniff de mot de passe!!!! (entre votre machine et votre serveur SSH car de votre serveur SSH à Internet, ce n'est plus crypté).

 

Configurations

puTTY et Windows/XP

On commence en rentrant l'adresse IP du serveur SSH (194.100.200.1) et le port du serveur SHH, le 22222 ici.

On coche évidemment le protocole SSH.

 tuto tunnel ssh putty windows kookyoo

 

Ensuite, nous allons configurer le tunnel.

J'utilise le port 9999 car j'en ai envie ;) et car il revient régulierement sur le forum et tuto des tunnels.

On oublie pas de cocher Dynamic !!! Très important!

Et on fini par le bouton Add.

tuto tunnel ssh putty windows kookyoo

 

Options optionnelles:

Connection / SSH : Case "Enable compression" > permet de compresser les paquets, gain en bande passante.

Connection / SSH / TTY : Case "Don't allocate a pseudo-terminal" > permet de ne pas avoir de terminal pour entrer des commandes.

 

Vous devrez ensuite cliquez sur "Open" en bas à droite.

On vous demandera un utilisateur et mot de passe pour vous authentifier sur le serveur SSH.

 

ssh et Linux/Ubuntu ou Linux/Debian

Ouvrez une console et faîtes:

 

ssh -D 9999 -p 22222 user@194.100.200.1

 

 

Vous pouvez rajouter des options histoire de faire plus geek ou tout simplement car vous en avez l'usage:

 

ssh -fnNqT -D 9999 -p 22222 user@194.100.200.1
  • -f : background
  • -n : redirige les sorties vers /dev/null
  • -N : permet de ne pas pouvoir exécuter de commande à distance
  • -q : quiet mode, mode silencieux
  • -T : désactive l'ouverture d'un TTY

 

gSTM et Linux/Ubuntu

Même config évidemment... voici les captures:

 

kookyoo tuto tunnel ssh gstm ajout

 

kookyoo tuto tunnel ssh gstm configuration 

 

kookyoo tuto tunnel ssh gstm connection

 

Merci à The Gimp et Gpaint pour ces magnifiques retouche ;)

On croirait presque que le serveur inexistant existe ;)

 

Utilisation du tunnel SSH sécurisé

Nous allons configurer notre naviguateur favoris qu'est: Mozilla Firefox.

Let's go! (Allons-y!)

 

Ouvrez Firefox..... je sais il est déjà ouvert, vu que vous lisez ce tutoriel depuis le fabuleux site: Kookyoo.net.

Pour Windows: Outils / Options / Avancé / Onglet Réseau / Cadre Connexion / Bouton Paramètres...

Pour Linux: Edition / Préférences / Avancé / Onglet Réseau / Cadre Connexion / Bouton Paramètres...

 

kookyoo tuto tunnel ssh firefox configuration

 

Aller vérifier sur votre site préféré qui affiche votre adresse IP, pour moi c'est: http://mire.ipadsl.net/.

Et là au grand bonheur:

 

kookyoo tuto tunnel ssh firefox connexion reussi

 

Vou pouvez faire pareil avec Thunderbird, Pidgin, ou autre ;)

 

 

 

!!! ATTENTION !!!

Votre traffic est crypté ...

MAIS

... les requètes DNS ne le sont pas ...

DONC

Si vous fâites ceci dans un contexte tendu (pas bien!), c'est à vos risque et périls!

Quelqu'un (un administrateur par exemple), peut voir les domaines que vous visitez.

 

 


La source utile:

http://thinkhole.org/wp/2006/05/10/howto-secure-firefox-and-im-with-putty/

Cela m'a aidé pour puTTY, je ne trouvais pas la bonne option :S

 

NB:

Les termes : "crypter", "encrypter", "chiffrement", "sécurisé" sont sans doute utilisé à moyen escient. (pas toujours correct)

L'adressage utilisé est fictif, et il n'y a pas de serveur errière cette adresse IP.

 


 

Bonne création de tunnels SSH!!!!



Billet sous licence Creative Commons BY-NC-SA 

Maxime T.

Rédacteur chez Kookyoo.net > blog/farwarx

www.teissedre.info







Commentaires 19 commentaires

Seb le 08 Janvier 2009 à 18:30

Alors ça, je trouve que c'est plutôt sympa : )

J'aurais jamais pensé utiliser mon serveur ssh comme proxy, mais ça peut toujours servir : )

Il me reste cependant deux questions. La première : et pour le DNS on fait quoi ? Directement dans les paramètres du système ?

La seconde : tu te souviens de la syntaxe pour enchaîner les proxy dans une url ?

farwarx le 08 Janvier 2009 à 19:02

PsYkOpaT > - pour le DNS j'ai une idée que je testerai demain,
- je ne m'en souvient plus :S je vais chercher.

farwarx le 09 Janvier 2009 à 18:51

Pour faire passer les requêtes DNS dans votre tunnel SSH par le proxy Socks 5, j'ai lu sur plusieurs sites qu'il faut modifier une valeur de Firefox:
URL: about:config
search: socks
network.proxy.socks_remote_dns;true (à false par défaut)

Et normalement vos requêtes DNS devraient être 'socksifiées'.
Ca ne marche pas sur mon Ubuntu...
Si quelqu'un peut voir.

Seb le 09 Janvier 2009 à 19:28

Pour moi sous XP ça ne semble pas marcher non plus. Il continue ses requêtes normalement avec le DNS du système.

farwarx le 10 Janvier 2009 à 18:21

MAJ: ajout de Gstm comme prévu.

farwarx le 10 Janvier 2009 à 18:59

MAJ: les requêtes DNS passent bien dans le tunnel!!!
Sous Firefox faire:
URL: about:config
search: socks
network.proxy.socks_remote_dns;true (à false par défaut)

Modifier vos paramètres de proxy et configurer un proxy http = au socks (même adresse et port), valider, vous ne surfez plus OK.
Remodifier les paramètres, et enlevez le proxy http et ne laissez que le socks.
Naviguez ;) Enjoy!

Je viens de tester et le paramètre de Firefox a dû s'appliquer en fesant la manip.

On me confirme et je MAJ le billet.

RoUtMoUt le 11 Janvier 2009 à 10:19

Pour ajouter une valeur dans le dns de windobe c'est dans system32/driver/etc et il faut editer le HOST
Au sinon tuto super qui explique tout simplement (alors que c'est galere expliquer)
GG pour ce tuto

invité le 08 Octobre 2009 à 0:24

bonjours;
je suis en train d'essyae ton tuto pour pouvoir acceder à certains site de partage (rapidshare). j'ai donc crée un compte ssh sur atlantica.us et j'ai aussi fais exactement ce qu'il ya ds le tuto. le problème est que firefox me dit que le serveur a refusé la connextion :!!!!. je ne sais donc pas si ya un moyen pour palier à ce problème étant donné que je n'ai pas la possibilité de créer mon propre serveur ssh chez moi.
merci d'avance.

farwarx le 08 Octobre 2009 à 9:40

Salut invité,
Avec ton accès SSH où qu'il soit et quelque soit son port, est-ce que la connexion SSH avec Putty fonctionne correctement? Peux-tu entrer des commandes (ls, who...)?
Si oui, et si tu as configuré correctement le forward du port ainsi que le proxy avec Firefox, cela devrait fonctionner.

Je testerai dès que je peux avec rapidshare.
Tiens nous au courant.

invité le 26 Avril 2010 à 8:19

salut
faut il comme pour un vpn avoir un compte quelque part pour remplir les login, user, mot de passe...?
merci

farwarx le 12 Mai 2010 à 17:57

Un VPN utilise un protocole de tunnel.
Un tunnel SSH est un VPN utilisant le protocole SSH pour crypter la connexion et donc faire passer ce que l'on veut dedans.

Il faut donc un compte sur le serveur distant.

invité le 27 Juillet 2010 à 14:56

Salut à tous !
Merci pour ce tuto :)
J'aurais aimé savoir quelle était exactement l'utilité de cela :s
Est-ce que ça sert uniquement à crypter les connexion à internet au cas ou l'on fasse des choses pas très nettes ?
Et si oui, qu'est-ce qu'il ne sera plus possible de faire pour un administrateur par exemple, après avoir suivi ce tuto ? Concrètement, que ne pourra-t-il plus faire ?

Merci encore :D

farwarx le 27 Juillet 2010 à 15:06

Bonjour invité,
L'utilité est de crypter les connexions.
L'usage qui en est fait est propre à chaque utilisateur.
En prenant à distance un PC, vous établissez une connexion crypter entre les deux parties, ensuite, libre à vous de faire ce que vous voulez, sachant que ce ne sera pas crypter entre le PC distant et Internet.
Vous pouvez avoir accès à vos documents persos de façon sécurisé, surfer sur internet sans limitations autre que la connexion Internet distante (utilise quand un proxy vous bloque), ou avoir accès à des services fournis par une machine seulement en local.

Je ne comprend pas la seconde question. Ce n'est pas parce que vous avez établis une connexion SSH que vous êtes restreint à cette nouvelle connexion. En cochant ou décochant la case proxy, il a accès à 2 réseaux distincts.

Farwarx.

invité le 27 Juillet 2010 à 17:25

Merci de votre reponse !
Je vais reformuler : Qu'est ce que ça change de crypter sa connexion à un pc distant ?
Que m'est-il possible de faire après avoir créé le tunnel par exemple et qui n'était pas possible avant ?
merci

farwarx le 27 Juillet 2010 à 17:32

- Cela sert à protéger ses paquets!!!
En effet, le réseau est une autoroute de paquets qui transitent.
Tu vas sur ton site préféré, tu te loggues (pas en https), et le paquet avec ton login/pass passe en clair sur le réseau. Si tu n'as pas confiance en ce réseau (wifi gratuit ou autre), quelqu'un peut écouter et récupérer les mots de passes de la plupart des services courant.
En utilisant une connexion crypter, tes paquets passent dans cette connexion et si quelqu'un écoute, il ne verra que es paquets crypter, les paquets étant décrypter à la sortie, tout fonctionne sans problèmes.
- il est possible d'utiliser la connexion Internet du PC distant sans les restrictions de la connexion Internet locale (proxy, filtres...).
Tu peux également utiliser des logiciels utilisants des ports bloqués par ta connexion en les faisant passés par ton tunnel.

farwarx le 27 Juillet 2010 à 17:42

Personnellement, un tunnel SSH crypté m'est indispensable sur un réseau Wifi type restaurant, hôtel, box gratuit.....
Je sais très bien comment récupérer les informations sur un réseau, donc je n'ai pas confiance en ces réseaux gratuits...

invité le 04 Mars 2011 à 13:06

cite : "Quelqu'un (un administrateur par exemple), peut voir les domaines que vous visitez."
il y a pouvoir et pouvoir.
oui. en entreprise par exemple. un audit des communications est réalisé et archivé. (obligation légal.)
non. un administrateur ne regardera pas les log. (interdiction légal)
en vertue des lois informatique et libertés. il est formellement interdit de voir la navigation des employer. même si celle ci est illégal ou portant atteinte a la charte informatique.
soit les réglages proxy bloque la navigation. soit c'est autorisée.

toutes lectures des audits hors demande d'un juge est illégal. et passible de sanction professionnel mais aussi civil.

si un admin vous dit : " vous êtes aller sur kookyoo, c'est interdit. "
il est passible de poursuite.
après bien sûr s'il se rend compte que vus avez un trafique d'upload 16 Go en 12H alors que vous devriez utiliser le net que pour les mails et veille technologique.
là vous allez vous faire rappeler a l'ordre, sans même avoir a regarder les audits.

note : audit = log, a ceci près qu'on a appliquer des filtres et archivée uniquement ce qui reste après filtrage.

robin le 12 Août 2011 à 9:54

Pas mal ce tuto, j'ai moi même monté un tunnel SSH et je dois dire que tous m'ont bien aidé.
Par contre j'ai un petit soucis. Lorsque le tunnel est ouvert, connexion OK et tout...
Et ben au bout de quelques secondes il me met un message d'erreur et ferme la connexion.
Message : Disconnected : Received SSH2_MSG_CHANNEL_FAILURE for helf-open channel 264
Sais tu d'où ca peut provenir?

invité le 15 Août 2011 à 0:55

Chiffrer. En plus il seré chiffré. Chiffré. Chiffré. Chiffré !
Il est impossible de crypter quoi que ce soit !
Chiffrer = appliquer un algorithme que l'on connait afin de rendre un message illisible à des tierces personnes.
Déchiffrer = appliquer un algorithme rétablissant le message sous sa forme initiale
Décrypter = Reconstituer le message sans connaître l'algorithme.
Comment crypte-t-on ? Comment applique-t-on un algorithme que l'on n'établit pas ?



.laisser un commentaire




Codes html interdits. Les liens sont convertis automatiquement.

Réalisation

Code & Design : Sébastien Cardona

Page générée en : 0.011608s