Apportez votre aide…
Tor : Réseau Anonyme
Tor est un acronyme pour The Onion Router (le routeur en oignon : c'est-à-dire organisé en couches, comme les oignons) qui désigne un réseau informatique décentralisé permettant l'anonymat des clients, reposant sur des serveurs spécifiques appelés « nœuds ».
Le but de Tor est de se protéger de l'analyse de trafic, une forme de surveillance des réseaux qui menace l'anonymat et la confidentialité des personnes, les activités et les rapports confidentiels commerciaux. Avec Tor, les communications rebondissent à travers un réseau de serveurs distribués (Nœuds), appelés onion routers, qui vous protègent contre les sites web qui enregistrent les pages que vous visitez, contre les observateurs externes, et contre les onion routers eux-mêmes.
Tor réduit les risques d'analyses de trafic simples ou sophistiquées, en répartissant vos transactions entre plusieurs endroits de l'Internet. On ne peut donc pas, en observant un seul point, vous associer à votre destinataire. C'est comme utiliser un chemin tortueux et difficile à suivre pour semer un poursuivant (tout en effaçant de temps en temps ses traces). Au lieu d'emprunter un itinéraire direct entre la source et la destination, les paquets de données suivent une trajectoire aléatoire à travers plusieurs serveurs qui font disparaître vos traces. Personne ne peut donc déduire de l'observation d'un point unique, ni d'où viennent, ni où vont les données.
Tor Browser Bundle est un navigateur web basé sur une version long support de Firefox pré-configuré (gestion des cookies) et avec des extensions pré-installés (HTTPS-Everywhere, NoScript, Torbutton, TorLauncher) utilisant le réseau Tor.
Mise en garde
L'anonymat, c'est bien mais ça ne permet pas d'aller partout, par exemple les utilisateurs de Tor sont bannis de certains channels sur IRC comme #ubuntu sur freenode. Wikipédia interdit l'édition des pages wiki à un utilisateur se servant de Tor, que ce soit pour les utilisateurs inscrits ou les anonymes (adresse IP). D'autre part, on peut remarquer une baisse de vitesse dans les connexions donc si vous aimez surfer rapidement, vous allez être déçu.
Voici un lien qui vous donnera de quoi être au maximum anonyme avec Tor.
Sachez cependant que même avec HTTPS, vos données peuvent être interceptées ! Un logiciel, SSLstrip, permet de sniffer les données chiffrées au niveau du dernier relais. Voir ici et là.
Installation
Via les dépôts officiels
Il suffit d'installer le paquet tor et/ou le paquet torbrowser-launcher. Ce dernier paquet va télécharger le navigateur lors du premier lancement.
Installer Tor Browser Bundle manuellement
(Source: Running the Tor client on Linux/BSD/Unix)
Cette méthode est simple et rapide pour surfer avec Tor (et proposer un relais à la communauté ponctuellement). Elle est très sécurisée, l'offre groupée de navigation Tor (Tor Browser Bundle) incluant une version de Firefox optimisée et pré-configurée par l'équipe du projet Tor.
1. Rendez-vous sur la page de téléchargement de Tor Browser Bundle : https://www.torproject.org/download/download-easy.html.en
Si vous accédez à cette page depuis un système Linux, la version Linux du paquet sera proposée par défaut. Choisir la langue et l'architecture ( 32 ou 64 bits), attention le choix de la langue indique déjà des choses sur vous aussi il est préférable de choisir la version English.
2. Vérifier la signature de l'archive
Il est fortement recommandé de vérifier la signature de l'archive pour être sûr que l'archive n'est pas corrompue par un tiers ou par le réseau.
Cliquez sur le lien (sig) en dessous du bouton qui vous a permis de télécharger Tor Browser Bundle, enregistrez la signature (.asc) dans le même répertoire que l'archive Tor Browser Bundle.
Dans une fenêtre de terminal (Applications → Accessoire → Terminal), exécutez les commandes suivantes afin de récupérer et vérifier la clé de signature :
Ajoutez la clé publique à votre trousseau :
gpg --keyserver x-hkp://pool.sks-keyservers.net --recv-keys 0x4E2C6E8793298290
Vérifier que l'empreinte de la clé est correct :
gpg --fingerprint 0x4E2C6E8793298290
Vous devriez voir apparaître :
pub 4096R/93298290 2014-12-15 Key fingerprint = EF6E 286D DA85 EA2A 4BA7 DE68 4E2C 6E87 9329 8290 uid Tor Browser Developers (signing key) sub 4096R/F65C2036 2014-12-15 sub 4096R/D40814E0 2014-12-15 sub 4096R/589839A3 2014-12-15
Il faut maintenant vérifier la signature de l'archive en utilisant le numéro de version et le numéro de l'architecture propre à la version téléchargée :
Pour la version 4.5_en-US 32 bits
gpg --verify ~/Desktop/tor-browser-linux32-4.5_en-US.tar.xz{.asc*,}
Pour la version 4.5_en-US 64 bits
gpg --verify ~/Desktop/tor-browser-linux64-4.5_en-US.tar.xz{.asc*,}
La sortie devrait indiquer Bonne signature de « Tor Browser Developers (signing key) torbrowser@torproject.org »:
gpg: Signature faite le lun. 27 avril 2015 14:47:05 CEST avec la clef RSA d'identifiant D40814E0 gpg: Bonne signature de « Tor Browser Developers (signing key) <torbrowser@torproject.org> » gpg: Attention : cette clef n'est pas certifiée avec une signature de confiance. gpg: Rien n'indique que la signature appartient à son propriétaire. Empreinte de clef principale : EF6E 286D DA85 EA2A 4BA7 DE68 4E2C 6E87 9329 8290 Empreinte de la sous-clef : BA1E E421 BBB4 5263 180E 1FC7 2E1A C68E D408 14E0
(Source: How to verify signatures for packages)
3. Une fois téléchargé et la vérification faite, extraire les fichiers.
Vous pouvez extraire les fichiers où vous voulez : par exemple dans un dossier "tor" situé dans votre "/home" (par défaut les fichiers de l'archive sont dans un répertoire nommé tor-browser_en-US).
Utilisation
Avec le paquet torbrowser-launcher
Soit, utiliser un terminal pour frapper la commande suivante:
torbrowser-launcher
Soit, aller dans la grille contenant toutes les applications installées et cliquer sur l'icône "Tor Browser".
Lors de la première exécution, le navigateur sera téléchargé. Ce qui peut prendre du temps.
Avec Tor Browser installé manuellement
Il vous suffit de double-cliquer sur "start-tor-browser" dans le dossier d'extraction du logiciel, et de confirmer en cliquant sur "lancer".
Configuration
Configurer Polipo
Privoxy peut être utilisé à la place de Polipo. Un fichier de configuration pour privoxy est disponible là
La doc officielle de Tor recommande de ne pas démarrer les deux simultanément, car 2 proxy ne doivent pas écouter le même port. Ça crée des conflits. (Voir note ci-après si vous désirez installer privoxy ET polipo sur votre système)
À condition de changer le port d'écoute de Privoxy et/ou de Polipo, vous pouvez faire tourner les 2 simultanément.
Pour changer le port d'écoute de privoxy, consultez la section : « Aller plus loin… » / « Changer le port d'écoute de Privoxy » disponible sur la page (de cette doc) de Privoxy.
Pour changer le port d'écoute de polipo, consultez la doc de polipo disponible ici. Notamment cette section qui renseigne sur la variable proxyPort.
Si vous modifiez le port d'écoute du proxy choisi pour fonctionner avec tor, veillez à adapter la suite de la configuration (du navigateur par exemple) pour remplacer 8118 par le port personnalisé que vous aurez choisi.
La version actuelle de Tor utilise Polipo qui permet d'avoir des connexions SOCKS.
Le paquet est configuré par défaut pour écouter sur l'interface de loopback (127.0.0.1 ou localhost ) et sur le port 8118, Tor lance un proxy supportant Socks4a et Socks5 sur le port 9050. Par défaut seul Socks5 est utilisé par les configurations que nous allons mettre en place.
Installez le paquet polipo (Déjà installé avec le paquet tor)
La configuration se fait dans le fichier /etc/polipo/config
, pour les choix disponibles, voici un fichier officiel tout prêt :
wget https://gitweb.torproject.org/torbrowser.git/blob_plain/ae4aa49ad9100a50eec049d0a419fac63a84d874:/build-scripts/config/polipo.conf
Une fois téléchargé il vous faut le mettre dans le répertoire /etc/polipo/
en lieu et place du fichier de configuration par défaut.
Sauvegardons-la juste au cas où :
sudo mv /etc/polipo/config /etc/polipo/config.save sudo mv polipo.conf /etc/polipo/config
Vérifiez que Polipo utilise bien le proxy Socks de Tor. Pour cela, dans un terminal, exécutez la commande :
cat /etc/polipo/config | grep -i socksParentProxy
Et vérifiez également que le port est bien le 9050 (port par défaut de Tor pour socks) :
socksParentProxy="localhost:9050"
Relancez polipo
sudo /etc/init.d/polipo restart
Le port par défaut de tor est disponible ici : /etc/tor/torrc
Maintenir Tor Browser Bundle à jour
Il est très important de maintenir Tor Browser Bundle à jour !!
Tor Browser Bundle vous fait savoir qu'il n'est plus à jour au démarrage. Si vous manquez la fenêtre qui propose la mise à jour rendez-vous dans Aide ⇒ À propos du Navigateur Tor. Si une mise à jour est disponible elle sera affichée. Cliquez sur le lien pour effectuer la mise à jour.
sudo wget https://www.torproject.org/dist/torbrowser/6.0.8/tor-browser-linux64-6.0.8_en-US.tar.xz sudo dpkg-reconfigure tor-browser64
Source: Installation de Tor Browser Bundle 4.X (PPA “Nerd Herd” team)
Utiliser le réseau Tor avec votre navigateur
Il existe plusieurs façons d'utiliser Tor. Soit en le configurant comme serveur mandataire dans vos applications. Soit pour le surf uniquement avec des extensions pour navigateur internet.
Extension pour Firefox
Pour une utilisation nomade assez souple, il y avait l'extension Torbutton.
Pour une utilisation plus avancée, il existe l'extension FoxyProxy qui permet aussi de gérer Tor via Firefox. Il offre la possibilité de gérer d'autres proxy, d'éditer des règles, etc… L'utilisation de Tor Browser Bundle est par contre plus sécurisée par défaut que privoxy (gestion des cookies, désactivation des plugins, … par contre il ne change pas le user-agent).
Extension pour Chrome
L'extension «Proxy Switchy! » permet une utilisation avancée des proxy et d'indiquer celui installé par Tor sur la station informatique.
- Installez «Proxy Switchy! », l'icône "Proxy Switchy!" apparaît en haut à droite du navigateur ;
- Dans l'extension, allez dans options → Proxy Profils ;
- Indiquer dans le champ « Profile Name » le nom Tor ;
- Choisissez le bouton « Manual configuration » et cochez « Use the same proxy server for all protocols » ;
- Entrez les valeurs des champs :
- HTTP Proxy : 127.0.0.1
- Port : 8118
- Faites à nouveau un clic droit sur l'icône de l'extension et sélectionnez Tor.
Vous pouvez aussi utiliser l'extension Tor Browser Button qui fonctionne comme Torbutton sur Firefox.
Vérifier que vous utilisez bien le réseau Tor
Rendez vous sur ce site : https://check.torproject.org/
Installation d'un serveur Tor (nœud)
tor étant dans les dépôt officiel je ne suis pas sûr que cela soit toujours nécessaire ? Dans une fenêtre de terminal exécutez les commandes suivantes afin de récupérer la clé de signature du dépôt de Tor :
echo "deb http://deb.torproject.org/torproject.org $(/usr/bin/lsb_release -c|cut -f2) main"|sudo tee -a /etc/apt/sources.list.d/torprojetc.list gpg --keyserver keys.gnupg.net --recv 886DDD89 gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add - sudo apt-get update
Configuration d'un serveur Tor (nœud)
Comme toutes les solutions de chiffrage, le principal défaut du réseau Tor est sa lenteur. Vous pouvez contribuer à y remédier en créant un serveur, sachant que plus il y aura de serveurs Tor, plus le réseau sera rapide.
De plus, en créant un serveur vous renforcez votre propre confidentialité : Il devient en effet impossible de savoir si ce qui sort de votre serveur provient de votre propre activité ou bien si cela est uniquement un flux relayé par votre serveur.
Vous devrez choisir le rôle que vous souhaitez jouer sur le réseau : Nœud de transfert (Serveur relais) ou bien Nœud d'entrée-sortie.
Il est alors impératif de lire la F.A.Q. sur les abus du site officiel de Tor
Pré-requis
Il vous faut disposer au minimum de 20 ko/s en flux montant et descendant. Il vous faudra également avoir configuré au préalable un client ntp (pour obtenir automatiquement l'heure exacte d'un serveur de temps).
Édition du fichier /etc/tor/torrc
Il vous faut modifier les paramètres suivants :
SocksPort 9050 SocksListenAddress 127.0.0.1 DataDirectory /var/lib/tor Nickname peudo-de_votre_serveur Address votre_adresse_ip_fixe ContactInfo votre_nom votre_@adresse.mail ORPort 9001 BandwidthRate 20 KB #Bande passante allouée au minimum RelayBandwidthBurst 80 KB # Bande passante allouée au maximum BridgeRelay 1 ExitPolicy reject *:* #Pour ne pas être noeud de sortie
Créez le répertoire référencé dans le paramètre DataDirectory
et rendre l'utilisateur propriétaire de ce répertoire :
# chown debian-tor.debian-tor /var/lib/tor
Si vous ne disposez pas d'une adresse IP fixe, vous devrez vous inscrire sur un site tel que par exemple DynDNS et installer un client (En l'occurence ddclient
chez DynDNS) pour maintenir à jour la correspondance entre l'adresse IP de votre serveur et votre nom de domaine.
Remplacez alors la valeur du paramètre Address
du fichier de configuration par l'adresse enregistrée sur le service de DNS dynamique :
Address monserveurtor.dyndns.net
- Configurez votre pare-feu et le cas échéant votre routeur pour accepter les connexions provenant de Tor.
/sbin/iptables -t filter -A INPUT -p tcp --source-port 1024: --destination-port 9001 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -t filter -A OUTPUT -p tcp --destination-port 1024: --source-port 9001 -m state --state ESTABLISHED -j ACCEPT
- Redémarrez Tor.
sudo /etc/init.d/tor restart
- Vérifiez le contenu de son fichier log, après une quinzaine de minutes, on doit y trouver la phrase suivante :
Self-testing indicates your ORPort is reachable from the outside. Excellent. Cela signifie que cela fonctionne.
- Il ne vous reste plus qu'à vous enregistrer sur la liste des serveurs officiels (voir à cet effet la page des contacts).
Configurer les hidden services
Tor permet aux clients et aux relais d'offrir des services cachés. Ainsi, vous pouvez rendre disponible un serveur web, un serveur SSH, etc., sans avoir à révéler votre adresse IP aux utilisateurs. Et même, du fait que vous n'utilisez pas d'adresse publique, vous pouvez faire tourner un service caché derrière votre pare-feu.
Étape zéro : s'assurer que Tor fonctionne
Avant de commencer, il est nécessaire de s'assurer que :
- Tor est lancé et fonctionne ;
- Vous l'avez configuré correctement.
Première étape : installer un serveur Web localement
Premièrement, vous avez besoin de configurer un serveur web local. Paramétrer un serveur web peut s'avérer délicat, nous n'allons donc que survoler les bases ici. Si vous n'y arrivez pas ou cherchez à en faire plus, demandez à un ami de vous aider. Nous vous recommandons d'installer un serveur web séparé pour votre service caché, puisque même si vous en avez déjà un d'installé, vous l'utilisez peut-être déjà (ou planifiez de l'utiliser plus tard) pour un usage différent.
Le plus simple, et de loin, est d'installer thttpd.
$ sudo apt-get install thttpd
Puis
$ mkdir hidserv $ cd hidserv $ thttpd -T utf-8 -p 5222 -h localhost
Vous devriez retrouver le prompt, et à ce stade vous êtes en train de faire tourner un serveur web sur le port 5222. Vous pouvez mettre des fichiers dans le répertoire hidserv.
(La raison pour laquelle nous connectons le serveur web seulement sur localhost est de nous assurer qu'il ne sera pas accessible publiquement. Si des gens peuvent se connecter directement, ils pourraient confirmer que votre ordinateur est bien celui qui offre le service caché.)
Une fois votre serveur web paramétré, assurez-vous qu'il fonctionne : ouvrez votre navigateur et allez sur http://localhost:5222/, où 5222 est le port que vous avez choisi plus haut. Puis, essayez de mettre un fichier dans le répertoire HTML principal, et assurez-vous que vous pouvez y accéder.
Deuxième étape : configurer votre service caché
Ensuite, vous devez configurer votre service caché pour qu'il pointe sur votre serveur web local.
Premièrement, Arrêtez Tor dans Vidalia et arrêtez le service Tor
sudo service tor stop
Quittez Vidalia et ouvrez votre fichier torrc dans votre éditeur de texte favori (consultez la FAQ torrc pour plus d'information.)
sudo gedit /etc/tor/torrc
décommenter la ligne :
ControlPort 9051
Allez au milieu du fichier et cherchez la ligne :
############### This section is just for location-hidden services ###
Cette section du fichier consiste en un groupe de lignes, chacune représentant un service caché. Actuellement elles sont toutes en commentaire (les lignes commençant par #), ainsi les services cachés sont désactivés. Chaque groupe de lignes consiste en une ligne HiddenServiceDir, et une ou plus HiddenServicePort :
HiddenServiceDir est un répertoire où Tor va stocker les informations à propos du service caché. En particulier, Tor va créer un fichier dedans, nommé hostname qui va vous donner le nom oignon de l'URL. Vous n'avez pas à ajouter d'autres fichiers dans ce répertoire.
HiddenServicePort vous permet de spécifier un port virtuel (c'est celui que les gens penseront utiliser en accédant à votre service) et une adresse IP et un port pour les redirections vers ce port virtuel.
Ajoutez les lignes suivantes dans votre torrc :
HiddenServiceDir /home/username/hidden_service/ HiddenServicePort 80 127.0.0.1:5222
Vous allez avoir à changer la ligne HiddenServiceDir, pour qu'elle pointe vers le répertoire qui est accessible en lecture/écriture par l'utilisateur qui fait tourner Tor. L'exemple ci-dessus devrait fonctionner si vous remplacez "username" par votre propre nom de login. Maintenant sauvegardez votre torrc.
Allez dans Vidalia et configurer Tor Control :
Paramètres → avancées → cochez "use TCP connections(ControlPort)" et remplissez le champ "Adresse" par 127.0.0.1:9051, Choisissez "authentification par mot de passe" dans la liste déroulante et cochez "défini aléatoirement"
Relancez Tor
sudo service tor start
Puis relancez Tor dans Vidalia
Si Tor redémarre, c'est génial ! Sinon, quelque chose se passe mal. Premièrement regardez les logs pour avoir des pistes. Il devrait y avoir des avertissements ou des erreurs. Ça devrait vous donner une idée du pourquoi ça se passe mal. Souvent des erreurs de frappe dans le fichier torrc ou de droits d'accès aux répertoires. (Voyezla FAQ sur les logs si vous ne savez pas comment les activer ou bien où les trouver.)
Quand Tor se lance, il doit automatiquement créer le HiddenServiceDir que vous avez spécifié (si nécessaire), et il devrait y créer deux fichiers.
private_key
Premièrement, Tor va générer une nouvelle paire de clés publique/privée pour votre service caché, et les écrire dans un fichier appelé "private_key". Ne partagez pas cette clé avec d'autres ; si vous le faites ils peuvent découvrir qui fait fonctionner votre service caché.
L'autre fichier qui va être créé s'appelle "hostname". Il contient un court résumé de votre clé publique – ça devrait ressembler à quelque chose comme duskgytldkxiuqc6.onion. C'est le nom public pour votre service, et vous pouvez l'annoncer à d'autre gens, le publier, le mettre sur votre carte de visite, etc.
Maintenant que vous avez redémarré Tor, il collecte des points d'introduction dans le réseau Tor, et génère ce qui est appelé un descripteur de service caché, qui est une liste de points d'introduction signée avec la pleine clé publique. Il publie ce descripteur anonymement aux serveurs d'annuaires, et d'autres utilisateurs peuvent anonymement le rapatrier à partir des serveurs d'annuaires lorsqu'ils souhaitent accéder à votre service.
Essayez maintenant : coller le contenu du fichier hostname dans votre navigateur web. Si ça marche, vous devriez avoir la page HTML que vous avez paramétrée à la première étape. Si ça ne fonctionne pas, jetez un œil dans vos logs pour vous aider, et continuez d'essayer jusqu'à ce que ça fonctionne.
Paramètres → Services Remplissez Port virtuel avec 80 Destination avec 127.0.0.1:5222 Chemin du dossier avec /home/username/hidden-sevice
Lorsque vous relancez Tor votre adresse onion est automatiquement générée
Troisième étape : astuces plus avancées
Si vous envisagez de maintenir votre service pendant quelques temps, il est conseillé de faire une copie de votre fichier private_key quelque part.
Nous avons évité de recommander Apache ci-dessus,
a) parce que beaucoup de personnes le font déjà tourner comme serveur public sur leur ordinateur et
b) parce que c'est un programme assez lourd et qu'il est en mesure de révéler votre adresse IP ou des informations permettant de vous identifier à un grand nombre d'endroits, par exemple dans les pages 404.
Pour les gens qui ont besoin de plus de fonctionnalités, Apache devrait-être la réponse juste. Est-ce que quelqu'un pourrait faire une liste des points sensibles pour verrouiller Apache lorsque vous l'utilisez comme service caché ? « Savant » doit aussi avoir ce genre de problème.
Si vous souhaitez renvoyer plusieurs ports virtuels pour un seul service caché, ajoutez simplement plus de lignes HiddenServicePort. Si vous voulez faire tourner plusieurs services cachés à partir du même client Tor, rajoutez simplement une autre ligne HiddenServiceDir. Toutes les lignes suivant le HiddenServicePort se réfèrent à la ligne HiddenServiceDir jusqu'à ce que vous ajoutiez une autre ligne HiddenServiceDir :
HiddenServiceDir /usr/local/etc/tor/hidden_service/ HiddenServicePort 80 127.0.0.1:8080
HiddenServiceDir /usr/local/etc/tor/other_hidden_service/ HiddenServicePort 6667 127.0.0.1:6667 HiddenServicePort 22 127.0.0.1:22
Il y a quelques problèmes d'anonymat que vous devriez également garder à l'esprit :
Comme cité ci-dessus, soyez vigilant sur ce que votre serveur web révèle de vous, de votre ordinateur, de votre emplacement géographique. Par exemple, les lecteurs peuvent facilement déterminer s'il s'agit de thttpd ou d'Apache, et apprendre quelque chose sur votre système d'exploitation. Si votre ordinateur n'est pas en ligne en permanence, votre service caché ne le sera pas non plus. Ceci apporte une information à un adversaire observateur.
Résolution de problèmes courants
Résoudre le problème d'écriture avec le clavier
- Ouvrir le fichier start-tor-browser (qui est à la racine du dossier tor) avec votre éditeur préféré
- Ajouter ce bout de code dans la deuxième ligne après (#!/bin/sh) :
export GTK_IM_MODULE="xim"
- Sauvegarder le ficher
- Et enfin relancer tor pour observer le résultat !
Pages sur le sujet
Voir aussi
- Privoxy, un proxy web qui sécurise le net.
- ProxyChaines, créer un tunnel pour les processus via Tor
- "(fr)" Tor sur Framasoft
—-
Contributeurs: psychederic, guenillon, percherie, binnette, vince06fr, mimidevos