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 01/2015: E-Books im Griff

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

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.