Tor

De Justine's wiki
Aller à la navigation Aller à la recherche

https://www.linux.com/tutorials/beginners-guide-tor-ubuntu/ https://stem.torproject.org/index.html

Installation et configuration sur Linux

Je suis ici sous Manjaro.

Par défaut, le paquet "Tor" a pour principe d'ouvrir un port de la machine vers lequel envoyer des commandes afin de controler Tor:

<source lang="bash"> pacman -S tor

  1. On va ensuite générer un hash de mot de passe.

$ tor --hash-password "passwordhere" 16:AC5FB526B90B4ED06027C6C4343EF87075B63B9A25822EE198622EE4D6 </source>

En effet, il est plus prudent de protéger le port Tor par un mot de passe afin d'empêcher que d'autres s'en servent.

Nous allons ensuite modifier le fichier de config /etc/tor/torrc pour y ajouter les lignes suivantes:

<source lang="bash"> ControlPort 9051 HashedControlPassword 16:E600ADC1B52C80BB6022A0E999A7734571A451EB6AE50FED489B72E3DF </source>

Suivi d'un redémarrage du service Tor.

On peut ensuite s'authentifier:

echo -e 'AUTHENTICATE "motdepasse"rnsignal NEWNYMrnQUIT'

Par défaut, Tor écoute le port 9050 en attente d'une connexion SOCKS. On peut pointer nos applications vers ce port.

Lancer un navigateur avec Tor

Exemple avec Chromium:

chromium --proxy-server="socks5://localhost:9050" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost"

On est bien évidemment pas sûr d'être tranquille comme ça : le plus simple est d'installer le browser Tor.

<source lang="bash"> https://www.torproject.org/dist/torbrowser/9.0.1/tor-browser-linux64-9.0.1_en-US.tar.xz tar -xf tor-browser-linux64-9.0.1_en-US.tar.xz cd tor-browser_en-US/ ./start-tor-browser.desktop </source>

Installation de TorSocks

Sous Manjaro, TorSocks est dispo en AUR, installable avec pamac. TorSocks permet de mettre en place un proxy socks pour ne pas s'embêter à rediriger nous même le flux réseau quand on veut faire du curl et autre choses ne gérant pas les proxy SOCKS

<source lang="bash"> pamac install torsocks

  1. On peut vérifier que ça fonctionne

torsocks curl 'https://api.ipify.org' </source>

Créer un nouveau circuit

On peut créer un nouveau circuit Tor comme ceci:

echo -e 'AUTHENTICATE "passwordhere"rnsignal NEWNYMrnQUIT' | nc 127.0.0.1 9051

Stem

Stem est une lib Python servant à créer des contrôleurs Tor.

<source lang="python"> from stem.control import Controller

with Controller.from_port(port = 9051) as controller:

 controller.authenticate()  # provide the password here if you set one
 bytes_read = controller.get_info("traffic/read")
 bytes_written = controller.get_info("traffic/written")
 print("My Tor relay has read %s bytes and written %s." % (bytes_read, bytes_written))

</source>

La doc donne plus d'infos.