Wiki [Tuto/HowTo] Ajouter des Tor Hidden Service a vos frontends HaProxy

0
26
juin
2018

Introduction

Je pars du principe que vous avez déjà installez au moins un Frontend et un Backend et êtes donc capable de lire et traduire (avec l'aide des moteurs de recherche) les configurations d'HaProxy suivantes sans me forcer à entrer trop dans le détails.
Pour rappel HaProxy est un proxy permettant de répartir la charge réseau sur une ou plusieurs machines. Tor Hidden Service est quant à lui un mécanisme permettant de disposer d'un nom de domaine unique au monde et ne nécessitant rien qu'un accès internet et une connexion au réseau Tor pour fonctionner.
Plusieurs Hidden Service peuvent bien entendu pointer vers le même backend qui affichera, ou non, la même page.

Configuration de HaProxy.

Éditez le fichier de configuration de HaProxy /etc/haproxy/haproxy.cfg

sudo nano /etc/haproxy/haproxy.cfg

Adaptez puis ajoutez la configuration du Frontend suivante.

frontend Frontend_Tor_HTTP
 bind 127.0.0.1:81 # on utilise un autre ports afin d'éviter les conflits avec les autres frontends
 mode http
 option httpclose
 option forwardfor
 reqadd X-Forwarded-Proto:\ http
# default_backend serveur_web # NE DECOMMENTEZ QUE SI VOUS VOULEZ RENVOYER VERS UN BACKEND QUAND LE NOM DE DOMAINE EST ERRONÉ (FORTEMENT DÉCONSEILLÉ, au risque de diminuer l'anonymat du serveur face aux bots)
 # www.mon.domaine.com
 acl host_tor_www.mon.domaine.com hdr(host) -i mon_adresse_tor.onion
 use_backend serveur_web if host_tor_www.mon.domaine.com
 # www.HelloWorld.com
 acl host_tor_www.HelloWorld.com hdr(host) -i blablablablablab.onion
 use_backend serveur_web if host_tor_www.HelloWorld.com

Adaptez puis ajoutez la configuration du Backend suivante.

backend serveur_web
 mode http
 balance roundrobin
 option forwardfor
 option httpchk HEAD /haproxytest.txt HTTP/1.0
 cookie SERVERID insert indirect nocache
 server superRaspberry superRaspberry:80 cookie superRaspberry #ssl verify none #check inter 10000

Configuration de Tor.

Créez le dossier qui hébergera la configuration de votre Hidden Service.

mkdir -p /var/lib/tor/hidden_service/http_mon_domaine

Accordez au dossier et à son éventuel contenu les bonnes permissions (rwx--S--- pour debian-tor:root)

chown debian-tor:root -R /var/lib/tor/hidden_service/http_mon_domaine
chmod 2700 -R /var/lib/tor/hidden_service/http_mon_domaine

Éditez le fichier de configuration de tor /etc/tor/torrc

sudo nano /etc/tor/torrc

À la fin du fichiers, adaptez puis ajoutez les lignes suivantes:

 HiddenServiceDir /var/lib/tor/hidden_service/http_mon_domaine
 HiddenServicePort 80 127.0.0.1:81

Recommencez pour chaque Hidden Service.

Appliquez et testez

Redémarrez Tor et HaProxy

( service tor restart ; service haproxy restart )

Attendez un peu que Tor crée ses routes puis tentez de vous connecter sur la page avec votre client préféré.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.