[Tuto] Tor : héberger son « hidden service »

(Environ 5 min de lecture)

 

Bonjour à tous,

cette fois, nous allons changer un peu d’orientation, et repasser un coup côté serveur : on va voir comment héberger son (ou ses) propres « hidden services » sans se casser le .onion . (tadadoum tchi !)

Malgré ce que pensent certains illuminés, un hidden service (et Tor en général), c’est pas forcément pour vendre de la drogue ou échanger des photos de mineures en petite tenue. On peut doit faire le maximum pour anonymiser nos connexions, et ça n’a aucun lien avec le fait qu’on soit ou non un gros pédophile néo-nazi du « dark web ». Heureusement, il y a encore des gens pour rétablir la vérité

 

Je me suis lancé là-dedans ce matin en me disant que ça allait m’occuper un moment, mais en fait c’est super rapide et facile à mettre en place (pour peu que le service que vous voulez ouvrir soit déjà fonctionnel, bien sûr…). Donc, niveau pré-requis :

  • une connexion SSH à un serveur avec accès root (ou alors un accès physique hein)
  • un service web quelconque, déjà fonctionnel (serveur web ou ce que vous voulez)
  • du café (il aura pas le temps de refroidir)

Welcome page - Tor Browser_011

 

Installer Tor

Depuis les dépôts de la distribution

Rien de plus simple, il suffit d’une commande : apt-get install tor .C’est tout !

Depuis les dépôts de Tor Project

Des fois que… 😉

Ajoutez à votre sources.list :

1
2
3
4
#### Tor official repos
## Lancez:  gpg --keyserver keys.gnupg.net --recv 886DDD89
## Puis : gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
deb http://deb.torproject.org/torproject.org wheezy main

Comme vous l’aurez remarqué, il y a deux commandes à lancer pour ajouter à votre système la clé de signature des dépôts de Tor. Cela peut nécessiter l’installation de GPG. En cas de besoin : apt-get install gnupg2 .

Puis lancez apt-get update && apt-get install tor . Là encore, c’est terminé.

 

Créer le hidden service

Avec votre éditeur de texte favori, ouvrez le fichier /etc/tor/torrc . Recherchez la ligne :

############### This section is just for location-hidden services ###

(qui, comme vous êtes tous bilingues anglais-français, indique que ce qui suit est dédié à l’hébergement de services cachés)

Ajoutez donc sous cette ligne les 2 lignes suivantes :

1
2
HiddenServiceDir /var/lib/tor/un_premier_service/
HiddenServicePort 80 127.0.0.1:80

Alors. La première ligne doit indiquer un répertoire accessible en lecture et en écriture par Tor. Remplacez « un_premier_service » par un nom évocateur, surtout dans le cas où vous souhaitez héberger plusieurs services cachés. Tor va créer 2 fichiers dans ce répertoire, on y reviendra ensuite.

La seconde ligne correspond au port entrant du service caché. Si vous voulez que ce soit du web, c’est le 80, et ainsi de suite. Ensuite, 127.0.0.1 indique que le service « réel » (dans mon cas le serveur Lighty) est local. Le :80 correspond au port sur lequel Lighty écoute.

Vous pouvez ajouter d’autres lignes du même type que la seconde, concernant d’autres ports. Cela est utile si vous voulez proposer du web et du ssh, par exemple.

Enregistrez le fichier, et relancez Tor : /etc/init.d/tor restart

Normalement, il n’y a pas d’erreurs. Dans le cas contraire, vérifiez les logs pour vous mettre sur la piste ! 😉

Voilà voilà. Maintenant, sur votre machine habituelle, installez Tor, ou utilisez un des packages préparés pour exécuter Tor et un navigateur pré-confguré.

Entrez dans la barre d’adresse du « Tor Browser » votre domaine en .onion et validez. Magie des chatons dans des tuyaux, vous accédez à la page d’accueil de Lighty.

Notez que si le service hébergé n’est pas un serveur Web, vous devez indiquer à votre logiciel local (client SSH, Jabber…) de passer par Tor pour la connexion !