Raspberry Pi als TOR-Zugangspunkt mit zwei WLAN-Sticks

In einem meiner früheren Beiträge habe kurz darauf hingewiesen, wie man seinen Raspberry Pi als Zugangspunkt zum TOR-Netzwerk nutzen kann ➡ Congratulations. Your Raspberry Pi is configured to Tor. Bei dieser Lösung benötigt man aber eine LAN- und eine WLAN-Verbindung. Diese Lösung ist aber manchmal zu unpraktisch, da man oftmals keinen funktionierenden LAN-Anschluss am Aufstellungsort zur Verfügung hat. AUs diesem Grund habe ich meinen Raspberry nun mit zwei baugleichen WLAN-USB-Sticks ausgestattet und als TOR-Zugangspunkt konfiguriert.

Für die nachfolgende Anleitung habe ich auf zwei Artikel in meinem Blog zurückgegriffen und diese kombiniert

  1. WLAN auf dem Raspberry Pi einrichten
  2. Congratulations. Your Raspberry Pi is configured to Tor

Im ersten Schritt konfigurieren wir den ersten WLAN-Stick. Dazu muss lediglich ein Eintrag in der Konfigurationsdatei für die Schnittstellen erfolgen. Vor jedem editieren einer Datei ist es jedoch sinnvoll ein Backup der Originaldatei anzulegen.

sudo cp /etc/network/interfaces /etc/network/interfaces
sudo nano /etc/network/interfaces

In die Datei tragt ihr die folgenden Zeilen ein

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet static
address  192.168.2.22
netmask 255.255.255.0
gateway 192.168.2.1
wpa-ssid "SSID"
wpa-psk "password"

Das Ergebnis sollte so aussehen:

Raspberry Pi - WLAN statische IP
Raspberry Pi – WLAN statische IP

Mit dieser Konfiguration habt ihr immer noch die Möglichkeit über ein LAN-Kabel auf den Raspberry Pi zuzugreifen.

Nach einem Neustart des Pi sollte nun der Schnittstelle wlan0 eine statische IP-Adresse zugewiesen werden über die ihr euch bereits mit dem Raspberry verbinden könnt. Erst wenn dies funktioniert, könnte ihr weitermachen. Prüfen könnte ihr das mit dem Befehl

ifconfig

Im nächsten Arbeitsschritt ist der WLAN Access Point einzurichten. Dazu verwende ich wieder die Anleitung, die adafruit auf ihrer Website zur Verfügung stellt ➡ http://learn.adafruit.com/setting-up-a-raspberry-pi-as-a-wifi-access-point/install-software

ACHTUNG:
Unser WLAN Access Point soll auf dem zweiten WLAN-Stick laufen, deshalb ist in der Anleitung folgendes auszutauschen

  • eth0 –> wlan0
  • wlan0 –> wlan1

Des Weiteren ist in er /etc/network/interfaces auch eine Kleinigkeit anzupassen. Vor dem wlan1-Eintrag ist allow-hotplug wlan1 einzufügen

sudo nano /etc/network/interfaces

allow-hotplug wlan1
iface wlan1 inet static
  address 192.168.42.1
  netmask 255.255.255.0

wlan1-Konfiguration
wlan1-Konfiguration

Wenn ihr das beachtet, dann sollte alles ohne Probleme funktionieren.

Im letzen Schritt ist die TOR-Software auf dem Pi zu installieren. Auch hier habe ich auf die Anleitung von adafruit zurückgegriffen.
WIe auch im vorherigen Schritt, unbedingt darauf achten, dass ihr die Schnittstellen richtig verwendet.

  • eth0 –> wlan0
  • wlan0 –> wlan1

Damit mein Raspberry Pi weiter ausgenutzt werden kann, habe ich auch einen MPD-Server installiert, der Musik und Radio wiedergeben kann. Beide Dienste laufen parallel und funktionieren ohne Probleme. Eine Anleitung zum einrichten eines MPD-Servers gibt es ebenfalls hier im Blog ➡ MPD-Server auf dem Raspberry P

Tor-Installation unter Kubuntu

Heute habe ich meine alte VBox mal wieder angeschmissen und gesehen, dass dort meine Tor-Installation nicht mehr läuft. Deshalb habe ich mich daran gemacht, um das zu benennen. Leider gab es dabei ein paar kleinere Problemchen, weshalb ich diese hier kurz festhalten möchte.

Vorab schon einmal, die alten Konfigurationshinweise in meinem Blog für Mozilla Firefox und Chrome gelten hierfür nicht mehr.

Installation von Tor

Meine Tor-Installation war veraltet, weshalb ich diese auf die aktuellste Version Upgraden musste. Dafür habe ich im wiki.ubuntuusers.de gespickt, wo das aktuelle Repository und der dazugehörige Key zu finden ist.

http://wiki.ubuntuusers.de/Tor/Installation?highlight=tor#Variante-2-Manuelle-Installation

Die Paketquelle könnt ihr über die Konsole oder über eine Paketverwaltung, wie z.B. Synaptic eintragen. Beachtet, ihr braucht dafür root-Rechte!!!

sudo synaptic

Synaptic - Paketquellen hinzufügen
Synaptic – Paketquellen hinzufügen

Danach sind die Paketquelle auf den aktuellsten Stand zu bringen.

sudo aptitude update

Nach dem Update kanns mit der Installation des Paketes losgehen.

sudo aptitude install tor

Tor Steuern

Nach der Installation ist Tor faktisch schon voll funktionsfähig und kann verwendet werden. Auf der Konsole kann der Dienst angesteuert werden:

Tor - Steuerung
Tor – Steuerung

Tor - Steuerung
Tor – Steuerung

Webbrowser Konfiguration

Der Webbrowser Firefox kann mit dieser Konfiguration von Tor umgehen und den Dienst Out-of-the-box nutzen, wenn man in den Netwerkeinstellungen den entsprechenden Proxy und den Port einträgt:

Firefox - Verbindungs-Einstellungen
Firefox – Verbindungs-Einstellungen

Das Gleiche gilt auch für Chromium:

Proxy-Einstellungen
Proxy-Einstellungen

Installation Vidalia

Nun gibt es in den (K)Ubuntu-Paketquellen noch das kleine Programm Vidalia, dass einen grafischen GUI für TOR-zur Verfügung stellt.

Die Installation funktioniert, wie gewohnt, über die Konsole mit dem Befehl

sudo aptitude install vidalia

Nach dem Start von Vidalia, kam bei mir der Fehler „Vidalia detected that the Tor software exited unexpectedly. Please check the message log for recent warning or error messages„.
Dieser Fehler kam auch schon früher, weshalb ich mir keine großen Gedanken darüber gemacht habe. Damals konnte man den Fehler mit den beiden Befehlen

sudo update-rc.d -f tor remove 
sudo pkill -x tor 


ausschalten und Vidalia funktionierte nach einem Neustart. Diesmal blieb aber der Fehler.

In einem Forum des Tor-Projekts fand ich nach ein wenig Suchen die Lösung. In den Vidalia-Einstellungen ist der ControlPort zu ändern.
( ➡ https://trac.torproject.org/projects/tor/ticket/4805)

Vidalia - ControlPort
Vidalia – ControlPort

Bevor man nun über Vidalia den Tor-Dienst steuern kann, muss dieser zuerst beendet werden, da sonst Vidalia nicht darauf zugreifen kann und eine Fehlermeldung erzeugt.

Tor und Vidalia
Tor und Vidalia

Tor und Vidalia
Tor und Vidalia

Auf der Testseite des Tor-Projekts kann man kontrollieren, ob man nun tatsächlich das Anonymisierungsnetzwerk nutzt
https://check.torproject.org/

Installation Polipo

Polipo ist ein schlanker Proxy-Server, der den einen Zugriff für Webapplikationen auf das Tor-Netzwerk via Proxy zur Verfügung stellt.
Da der Proxy in den Paketquellen vorhanden ist, kann man diesen auf der Konsole recht einfach installieren.

sudo aptitude install polipo


Nach der Installation ist der Proxy fast schon einsatzfähig. Wie bereits oben erwähnt, habe ich die ganze Installation in einer virtuellen Box durchgeführt. Nun möchte ich mit meinem Gastsystem den Zugriff auf das Tor-Netzwerk darüber realisieren. Aus diesem Grund gibt es ein paar Anpassungen vorzunehmen.

Zuerst sucht ihr euch die IP-Adresse der virtuellen Box heraus. Das geht auf der Konsole mit dem Befehl

ifconfig

Danach gilt es die config-Datei von Polipo zu bearbeiten, die im Verzeichnis /etc/polipo/ zu finden ist.
Die beiden folgenden Einträge sind anzupassen, um Polipo im Netzwerk nutzen zu können.

  1. proxyAddress
  2. allowedClients
Polipo-Konfiguration
Polipo-Konfiguration

Zum Abschluss dürft ihr natürlich nicht vergessen, die Proxy-Konfiguration euers Webbrowsers zu ändern.

Firefox - Proxy-Konfiguration
Firefox – Proxy-Konfiguration

Nach der Umstellung des Proxy in meinem Firefox, kommt nun bei jeder Suchanfrage über Google eine Fehlermeldung.

Google - We´re sorry ...
Google – We´re sorry …

Abhilfe schaffen hier Alternativesuchmaschinen, wie Startpage oder DuckDuckGo. Beide Suchmaschinen stellen auch ein Add-on für die gängigen Webbrowser zur Verfügung, um die Suchmaschine in der Suchbar bequem ändern zu können.

Ein kleines Problem bleibt noch zu lösen. Startet ihr eure virtuelle Box neu, wird Polipo nicht automatisch mit gestartet und die Webbrowser finden auf der definierten IP-Adresse keinen Proxy-Server. Abhilfe schafft ein Autostart-Eintrag, der Polipo für jeden Benutzer automatisch startet. Legt die Datei polipo.desktop im Verzeichnis /etc/xdg/autostart/ an. Schreibt in die neue Datei die folgenden Zeilen:

[Desktop Entry]
Type=Application
Name=polipo
Exec=/usr/bin/polipo

Was ihr natürlich bei der Konfiguration von Polipo beachten müsst, wechselt ihr mit eurem PC in ein anderes Netzwerk oder nehmt ihr die IP-Adressenzuweisung via DHCP vor, kann der Proxy u.U. nicht mehr gefunden werden, da die IP der virtuellen Box sich geändert hat.

Statische IP-Adresse für die virtuelle Box vorgeben

Wenn ihr euch in einem DHCP-Umfeld befindet, kann es u.U. vorkommen, dass eure virtuelle Box unterschiedliche IP-Adressen zugewiesen bekommt. Da in der Einstellungen von Polipo eine feste IP-Adresse eingetragen ist, kann z.B. euer Webbrowser nicht darauf zugreifen. Aus diesem Grund kann es erforderlich sein, eine statische IP-Adresse zu vergeben. Es ist die Datei interfaces im Verzeichnis /etc/network/ zu editieren.

## Ethernet Schnittstelle 0
auto eth01  
# Beim Bootvorgang automatisch starten
iface eth11 inet static
    address 192.168.0.15
    netmask 255.255.255.0  
    gateway 192.168.0.1

Siehe auch

Congratulations. Your Raspberry Pi is configured to Tor.

Congratulations. Your Raspberry Pi is configured to Tor.

Seit ein paar Jahren nutze ich in unregelmäßigen Abständen das Zwiebelnetzwerk Tor. Als auf meinem Laptop noch Linux lief, hatte ich dort die Software selbst installiert müssen und mittels Tor-Button den Dienst an- und abschalten können. Auf den Windows Rechnern war mir die Installation zu umständlich und ich bin auf das offizielle Tor Bundle ausgewichen, dass auch einwandfrei funktioniert.