Construisez votre propre: Safeplug (Tor Proxy Box)

Pourquoi payer 50 $ pour une boîte proxy Tor quand vous pouvez faire votre propre avec un Raspberry Pi et un dongle USB WiFi?

Pourquoi payer 50 $ pour une boîte proxy Tor quand vous pouvez faire votre propre avec un Raspberry Pi et un dongle USB WiFi?
Publicité

Safeplug est un routeur spécial qui crée une connexion Internet anonyme via le réseau Tor (qu'est-ce que Tor?); il en coûte 50 $ - mais vous pouvez faire votre propre avec un Raspberry Pi et un dongle USB WiFi.

En vérité, vous n'économiserez pas beaucoup: le coût du Pi plus un dongle WiFi adapté vous coûtera environ 50 $ ou plus. Mais le bricolage est amusant, nous apprendrons beaucoup dans le processus, et vous avez probablement déjà un Pi assis autour de la collecte de la poussière.

safeplug

Liste de courses

  • Raspberry Pi (modèle B)
  • Carte SD d'au moins 4 gigaoctets
  • câble Ethernet
  • Adaptateur USB Wifi compatible - cela signifie que vous pouvez travailler en mode structure avec le package hostapd (comme celui-ci basé sur le chipset RT5370)
  • Adaptateur d'alimentation micro USB

liste de courses

La théorie

Nous allons adapter Raspberry Pi pour qu'il fonctionne comme un routeur: il se branche sur un port Ethernet de votre routeur Internet existant comme n'importe quel autre appareil, mais il se connecte également au réseau d'anonymisation de Tor. Vous pouvez lire notre guide complet à Tor pour en savoir plus, mais essentiellement, il fonctionne en envoyant vos demandes Internet à travers plusieurs ordinateurs - le faisant rebondir autour du globe - ce qui vous rend virtuellement introuvable. Le Pi diffusera un réseau WiFi comme le ferait probablement votre routeur, de sorte que tout trafic sur le WiFi sera envoyé sur Internet, via Tor. En fait, si vous n'avez pas encore de routeur WiFi et que vous en voulez un, suivez la première partie de ce tutoriel.

Il y a, bien sûr, une réduction de la vitesse pour ce faire, à la fois à travers l'élément de routage et le réseau Tor réel.

Soyez averti cependant: la navigation à travers Tor seul n'anonymera pas complètement votre session. Votre navigateur est plein de fichiers et de cookies mis en cache qui peuvent être utilisés pour identifier votre présence sur un site Web (qu'est-ce qu'un cookie? Qu'est-ce qu'un cookie et qu'est-ce que cela a à voir avec ma vie privée? Cela concerne ma vie privée? [MakeUseOf explique] La plupart des gens savent qu'il y a des cookies éparpillés sur Internet, prêts à être mangés par ceux qui peuvent les trouver en premier. Oui, il y a des cookies ... Lire la suite). Assurez-vous que ceux-ci sont désactivés et bloqués (utilisez le mode navigation privée) et, de toute évidence, ne commencez pas à vous connecter aux sites Web.

Commencer

Gravez une nouvelle copie de la dernière image Raspian Wheezy sur votre carte SD; branchez l'alimentation, Ethernet, adaptateur USB WiFi, et démarrez. Vous n'avez pas besoin d'un moniteur ou d'un clavier branché - nous le ferons tous à partir de la ligne de commande.

Utiliser un scanner IP Top 3 Outils d'analyse et de diagnostic réseau portables Top 3 Outils d'analyse et de diagnostic réseau portables Lisez plus pour connaître l'adresse IP de votre Raspberry Pi (le scanner IP pour OS X fonctionne bien pour moi), puis SSH à partir d'un invite de commande (comment utiliser SSH dans Windows 4 Façons faciles d'utiliser SSH dans Windows 4 Façons faciles d'utiliser SSH dans Windows SSH est la solution de facto pour accéder de manière sécurisée aux terminaux distants sous Linux et d'autres systèmes UNIX. Serveur SSH auquel vous voulez accéder, vous devrez télécharger un client SSH .... Lire la suite) avec la commande:

ssh pi@xxxx 

où xxxx est l'adresse IP de votre Pi. Le mot de passe par défaut est "framboise"

Type:

 sudo raspi-config 

pour exécuter l'utilitaire de configuration graphique. Développez le système de fichiers, puis quittez l'utilitaire de configuration et redémarrez. Vous devriez toujours avoir la même adresse IP - allez-y et SSH à nouveau.

Vérifiez si le Pi peut accéder à Internet en tapant

 ping google.com 

à partir de votre session SSH (pas sur votre machine locale). Vous devriez voir quelque chose comme ceci:

ping-google

Appuyez sur CTRL-C pour l'arrêter. Maintenant, vérifiez votre carte WiFi est reconnu en tapant:

 ifconfig -a 

Si vous voyez wlan0 listé, tout va bien. Sinon, votre adaptateur sans fil n'est même pas reconnu, et encore moins capable de structure / mode AP.

wlan0-identifié

Mettons à jour le système et installons quelques logiciels. Exécutez le suivant un par un, en parcourant les invites au besoin. Dans la deuxième étape, nous supprimons le moteur wolfram pour corriger un bogue de noyau mathématique - nous économisons également 450 mégaoctets dans le processus.

 sudo apt-get update sudo apt-get remove wolfram-engine sudo apt-get install hostapd isc-dhcp-server 

erreur-installation-dhcp-server

Ici, nous avons installé un serveur DHCP afin que les clients WiFi puissent obtenir automatiquement une adresse IP. Ignorez l'erreur - cela signifie simplement que nous ne l'avons pas encore configuré.

 sudo nano /etc/dhcp/dhcpd.conf 

Commentez (ajoutez un # pour commencer) les lignes suivantes:

 option domain-name "example.org"; option domain-name-servers ns1.example.org, ns2.example.org; 

Décommentez (supprimez le #) le mot faisant autorité de ces lignes:

 # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; 

Maintenant, faites défiler vers le bas et collez-y:

 subnet 192.168.42.0 netmask 255.255.255.0 { range 192.168.42.10 192.168.42.50; option broadcast-address 192.168.42.255; option routers 192.168.42.1; default-lease-time 600; max-lease-time 7200; option domain-name "local"; option domain-name-servers 8.8.8.8, 8.8.4.4; } 

Enregistrer avec CTRL-X -> Y -> entrer .

Ensuite, tapez:

 sudo nano /etc/default/isc-dhcp-server 

Changez la dernière ligne pour qu'elle indique:

 INTERFACES="wlan0" 

dhcp-server-config

Ce qui signifie que notre serveur DHCP devrait écouter sur l'interface sans fil afin de donner des adresses IP. Enfin:

 sudo nano /etc/network/interfaces 

Remplacer tout après (en laissant cette ligne):

 allow-hotplug wlan0 

Avec ça:

 iface wlan0 inet static address 192.168.42.1 netmask 255.255.255.0 
 #iface wlan0 inet manual #wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf #iface default inet dhcp 

Interfaces réseau

Quittez et enregistrez (CTRL-X, Y, entrez - rappelez-vous cela, je ne le dirai pas encore!) . Nous avons maintenant défini une adresse IP statique pour le réseau sans fil, et nous avons demandé au serveur DHCP d'attribuer des adresses IP aux clients. Impressionnant. Ensuite, tapez:

 sudo ifconfig wlan0 192.168.42.1 

Pour définir notre hotspot, modifiez le fichier de configuration HostAP comme suit.

 sudo nano /etc/hostapd/hostapd.conf 

Ajoutez les lignes suivantes en éditant le ssid (nom du réseau WiFi) et wpa_passphrase si vous le souhaitez.

 interface=wlan0 driver=nl80211 ssid=PiTest hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=raspberry wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP 

Maintenant, nous devons dire au Pi où se trouve notre fichier de configuration.

 sudo nano /etc/default/hostapd 

Remplacer cette ligne:

 #DAEMON_CONF="" 

avec:

 DAEMON_CONF="/etc/hostapd/hostapd.conf" 

Enfin, nous devons configurer NAT. NAT, ou Network Address Translation, est le processus de changement des adresses IP internes du réseau en une adresse IP externe unique, et le routage des choses de manière appropriée.

 sudo nano /etc/sysctl.conf 

Tout en bas, ajoutez:

 net.ipv4.ip_forward=1 

Sauvegarder. Exécutez toutes les commandes suivantes - n'hésitez pas à les coller toutes en même temps. Ici, nous établissons des tables de routage qui connectent simplement notre adaptateur Ethernet et WiFi.

 sudo sh -c "echo 1>/proc/sys/net/ipv4/ip_forward" sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED, ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT sudo sh -c "iptables-save>/etc/iptables.ipv4.nat" 

Enfin, exécutez:

 sudo nano /etc/network/interfaces 

et ajouter:

 up iptables-restore< /etc/iptables.ipv4.nat 

jusqu'à la fin. Pour tester, nous courons:

 sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf 

Votre réseau PiTest devrait être diffusé maintenant, en supposant que vous n'avez pas changé le nom. Essayez de vous connecter à partir d'une autre machine ou d'un autre appareil mobile et vous devriez voir quelques informations de débogage affichées à l'écran, comme ceci:

debug-wifi-réseau

Maintenant, appuyez sur CTRL-C pour annuler le programme, et faisons en sorte que cela fonctionne comme un service au redémarrage. Exécutez ces commandes:

 sudo service hostapd start sudo service isc-dhcp-server start sudo update-rc.d hostapd enable sudo update-rc.d isc-dhcp-server enable 

start-dhcp-on-reboot

Maintenant, nous avons la configuration de la partie routage, mais nous devons encore ajouter Tor à l'équation - en ce moment, nous avons littéralement fait un routeur.

Installez Tor

 sudo apt-get install tor sudo nano /etc/tor/torrc 

Copiez et collez ce droit en haut. Ignorez tout le reste et enregistrez:

 Log notice file /var/log/tor/notices.log VirtualAddrNetwork 10.192.0.0/10 AutomapHostsSuffixes .onion, .exit AutomapHostsOnResolve 1 TransPort 9040 TransListenAddress 192.168.42.1 DNSPort 53 DNSListenAddress 192.168.42.1 

torrc

Débarrassez-vous de nos anciennes tables de routage et ajoutez une exception pour SSH afin de pouvoir vous reconnecter. Nous ajoutons un passthrough pour les recherches DNS; et diriger tout le trafic TCP (signaux de contrôle) vers 9040.

 sudo iptables -F sudo iptables -t nat -F sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 22 -j REDIRECT --to-ports 22 sudo iptables -t nat -A PREROUTING -i wlan0 -p udp --dport 53 -j REDIRECT --to-ports 53 sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --syn -j REDIRECT --to-ports 9040 

Vous pouvez vérifier les entrées comme suit:

 sudo iptables -t nat -L 

Enregistrez le fichier afin qu'il soit chargé au redémarrage.

 sudo sh -c "iptables-save>/etc/iptables.ipv4.nat" 

Activez-le pour démarrer au démarrage, puis redémarrez pour pouvoir le tester.

 sudo update-rc.d tor enable sudo shutdown -r now 

Vous pouvez créer un fichier journal et l'utiliser comme suit (ils ne sont pas nécessaires, mais peuvent être utiles pour le débogage si vous rencontrez des problèmes).

 sudo touch /var/log/tor/notices.log sudo chown debian-tor /var/log/tor/notices.log sudo chmod 644 /var/log/tor/notices.log tail -f /var/log/tor/notices.log 

Rendez-vous sur whatismyipaddress.com pour vérifier que votre adresse IP ne provient pas de votre propre FAI:

Quelle est mon adresse IP?

Ou utilisez check.torproject.org:

congrats-tor-is-travail

Vous pouvez constater que Google demande à vérifier avec un Captcha assez souvent - c'est parce que Tor est souvent utilisé par les spammeurs, et vous ne pouvez pas faire grand-chose à ce sujet.

google-spammer-check

Félicitations, vous êtes anonymisé et pouvez maintenant accéder aux sites Web Tor cachés avec le domaine .onion (Comment trouver des sites Onion actifs? Comment trouver des sites d'oignon actifs et pourquoi vous pourriez vouloir trouver des sites d'oignons actifs et pourquoi vous pourriez vouloir oignon Les sites, ainsi nommés parce qu'ils se terminent par ".onion", sont hébergés en tant que services cachés de Tor - un moyen complètement anonyme d'héberger des sites Web. Juste ne faites rien de stupide, comme démarrer un site Web de vente de médicaments pour Bitcoins, ou utiliser votre vrai nom n'importe où, et vous devriez aller bien. Faites-nous savoir si vous avez des problèmes et je vais essayer d'aider.

In this article