AA_tor_15936352123rf_Adam_Vilimek.jpg

© Adam Vilimek, 123rf.com

Tor zur Welt

Raspberry Pi als Tor-Proxy nutzen

12.08.2013
,
Wer nicht nur die Kommunikation seines Browsers via Tor schützen möchte, sondern seinen gesamten Internet-Datenverkehr, der kommt um einen externen Proxy-Server nicht herum. Der Minirechner Raspberry Pi bietet eine kostengünstige Lösung dafür.

Wer einen Tor-Proxy lokal betreibt, der muss alle Applikationen entsprechend konfigurieren, die den Dienst nutzen sollen. Darüber hinaus muss die Anwendung zwingend via SOCKS kommunizieren können. Möchten Sie aber Ihren kompletten Internet-Datenverkehr über das Tor-Netzwerk leiten, hilft nur ein externer Router.

Der Raspberry Pi (Abbildung 1) stellt dafür die ideale, weil günstige und stromsparende Hardware-Basis dar. Bekannt wurde das Projekt unter dem Namen Onion Pi [1]. Allerdings sollten Sie sich auch als Tor-Nutzernicht zu sehr in Sicherheit wiegen, denn das Verschleiern der IP-Adresse ist nur die halbe Miete und kann Ihre Identität nicht alleine verbergen (siehe Kasten "Die Grenzen von Tor").

Abbildung 1: Die Public-Key-Verschlüsselung gleicht einem Schloss, bei dem unterschiedliche Schlüssel auf- und zuschließen. Dass der Schlüssel zum Abschließen (grün) außen an der Tür hängt, ermöglicht keinen Einbruch. Jeder kann ihn nutzen, um abzusperren, doch nur der Besitzer des geheimen privaten Schlüssels (rot) kann wieder aufschließen.

Die Grenzen von Tor

Wer Tor nutzt, sollte sich nicht per se in der Sicherheit wiegen, anonym im Netz zu surfen. Hier gilt es, einige Aspekte zu beachten. Aktive Skripte wie Flash, Javascript aber auch Java sind durchaus in der Lage, die Identität des Surfers offen zu legen.

Browser-Plugins wie Amazons "1Button App" tracken darüber hinaus jeden Seitenaufruf und schicken sogar die Sucheingaben zu Servern [4]. Ähnlich verhält es sich mit Cookies, die Aufschluss über die besuchten Seiten geben. Melden Sie sich bei Diensten wie Google, Facebook, Twitter und Konsorten an, hebelt das die Tor-Anonymität naturgemäß komplett aus. Entsprechend gilt es, auch den Browser mit den richtigen Plugins und Einstellungen zu härten, um auch hier auf der sicheren Seite zu stehen.

Einen weiteren, gerne übersehenen Aspekt stellen sogenannte Bad-Exit-Nodes dar. Generell stellen Exit-Nodes die letzte Instanz in der Mix-Kaskade dar und übertragen, sofern die aufgerufene Seite nicht selbst SSL verschlüsselt, die Daten im Klartext. Für Betreiber von Exit-Nodes – die prinzipiell jeder anbieten kann – ist es damit ein Leichtes, aus dem Datenstrom beispielsweise Login-Daten oder potenziell sensible Dokumente abzufischen. Dagegen schützen Sie sich, indem Sie beispielsweise ausschließlich vertrauenswürdige Exit-Nodes verwenden, etwa solche des Chaos Computer Club [5].

Auf los geht's los

Diese Beschreibung zum Einrichten von Onion Pi setzt ein eingerichtetes Image, etwa Raspian [2], auf der SD-Karte des RasPi voraus. Sämtliche im Artikel aufgeführten Eingaben und Änderungen erfordern Root-Rechte. Darüber hinaus benötigen Sie ein Netzwerkkabel sowie einen WLAN-Stick.

Zunächst gilt es, den Raspberry als Access Point und DHCP-Server zu konfigurieren. Prüfen Sie zunächst mit dem Befehl ipconfig -a, ob das Interface wlan 0 vorhanden ist. Besitzt das Interface bereits eine IP-Adresse, deaktivieren Sie es mit ifdown wlan0. Als nächsten Schritt installieren Sie als Root mit dem Befehl

# apt-get update && apt-get install hostapd isc-dhcp-server tor

die benötigten Software-Komponenten. Rufen Sie danach mit nano /etc/dhcp/dhcpd.conf die Konfigurationsdatei des DHCP-Servers auf und kommentieren Sie als erstes mit einer vorangestellten Raute (#) folgende Zeilen aus:

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

Danach entfernen Sie das Kommentarzeichen vor der Anweisung authoritative;. An das Ende der Datei hängen Sie den in Listing 1 gezeigten Konfigurationsblock an. Das Subnetz passen Sie dabei nach den eigenen Wünschen an. Mit [Strg]+[O] speichern Sie die Änderungen, mit [Strg]+[X] verlassen Sie anschließend den Editor.

Listing 1

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.8.4;
}

In der Datei /etc/default/isc-dhcp-server teilen Sie dem Server in der Direktive INTERFACES= mit, über welche Schnittstelle er künftig IP-Adressen vergibt. Für das vorliegende Szenario tragen Sie den Wert wlan0 ein. Weisen Sie danach dem Interface wlan0 in der Datei /etc/network/interfaces eine statische IP-Adresse zu (Listing 2)

Listing 2

iface lo inet loopback
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet static
  address 192.168.42.1
  netmask 255.255.255.0

Der Aufruf ifup wlan0 nimmt das WLAN-Interface in Betrieb. Damit der Onion Pi als Access Point arbeitet, gilt es, den Dienst zunächst in der Datei /etc/hostapd/hostapd.conf zu konfigurieren (Listing 3). An dieser Stelle empfiehlt es sich, zumindest den Wert für wpa_passphrase anzupassen: Dieses Kennwort dient später zum Login ins WLAN.

Listing 3

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

Damit Upstart den Daemon automatisch lädt, tragen Sie in der Konfigurationsdatei /etc/default/hostapd den Wert DAEMON_CONF="/etc/hostapd/hostapd.conf" ein. Aus Kompatibilitätsgründen mit aktuellen WLAN-Sticks empfehlen die Entwickler von Onion Pi zusätzlich ein Update von Hostapd (Listing 4). Nach dem Update der Access-Point-Software nehmen Sie die beiden Komponenten mit den Aufrufen service hostapd start und service isc-dhcp-server start in Betrieb. Damit sie bei folgenden Systemstarts automatisch laden, tippen Sie update-rc.d hostapd enable sowie update-rc.d isc-dhcp-server enable ein.

Listing 4

# wget http://www.adafruit.com/downloads/adafruit_hostapd.zip
# unzip adafruit_hostapd.zip
# mv /usr/sbin/hostapd /usr/sbin/hostapd.ORIG
# mv hostapd /usr/sbin
# chmod 755 /usr/sbin/hostapd

Umleitung

Die Kommunikation zwischen dem WLAN-Subnetz und Tor erfordert einige Anpassungen der Netzwerkkonfiguration. Im ersten Schritt öffnen Sie die Datei /etc/sysctl.conf und hängen an deren Ende die Anweisung net.ipv4.ip_forward=1 an. Das Kommando sysctl -p aktiviert die Änderung.

Nun gilt es, die Iptables-Regeln anzupassen [3]. Bereits vorhandene löschen Sie zunächst mit den Aufrufen iptables -F und iptables -t nat -F. Danach aktivieren Sie die wichtigsten Regeln neu (Listing 5). Um die Konfiguration zu speichern, tippen Sie:

# sh -c iptables-save > /etc/iptables.ipv4.nat

Listing 5

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

Damit das System die Regeln beim nächsten Reboot wieder einliest, öffnen Sie die Datei /etc/network/interfaces und ergänzen diese nach einer Leerzeile um den Eintrag up iptables-restore < /etc/iptables.ipv4.nat

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

WLAN-Signalqualität vom Treiber abhängig
GoaSkin , 29.10.2014 14:16, 0 Antworten
Hallo, für einen WLAN-Stick mit Ralink 2870 Chipsatz gibt es einen Treiber von Ralink sowie (m...
Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...