Einen Tor Middle Node bzw. eine Bridge unter Debian 5.0 betreiben

Geschrieben von Eric Scheibler am 02.10.2010

Da ich den Tor Client unter Windows installiert habe und dieser mir schon einige Male nützlich war, möchte ich das Projekt jetzt auch mit meiner Bandbreite unterstützen.

Installation:

# apt-get install tor

Ich musste mich entscheiden, ob ich ein Middle Node oder eine Bridge sein wollte. Einzig das Betreiben eines Exitnodes kommt für mich nicht in Frage. Der Mittle Node leitet Anfragen einfach nur weiter, je mehr es davon gibt, desto vielfältiger können die Kaskaden sein, über die der Traffic läuft. Außerdem beschleunigt man so das Netz und sorgt dafür, dass das Überwachen einzelner Teilnehmer erschwert wird. Eine Bridge dient dagegen als Einstiegspunkt in das Tor Netz und ist vor allem für Menschen gedacht, die in Ländern wohnen, in denen die bekannten Relays gesperrt werden. Je mehr Bridges es gibt, desto einfacher kommt also jemand aus einem autoritären Staat ins Tor Netz und damit in die benötigte Anonymität.

Es ist zwar nicht so ganz klar, was das Tor projekt dringender braucht aber ich habe gehört, dass es die Bridges sein sollen - also entschied ich mich für diese Möglichkeit.

Bridge

Standardmäßig ist Tor so konfiguriert, dass es nur als Client arbeitet und keine Pakete von anderen entgegennimmt. Es empfiehlt sich erstmal, diese Datei zu sichern.

mv /etc/tor/torrc /etc/tor/torrc.original

Im folgenden nun meine Config, damit mein Server als eine Tor Bridge fungiert:

nano /etc/tor/torrc
## TOR config file
## bridge settings
SocksPort 0
ORPort 9913
BridgeRelay 1
Exitpolicy reject <strong>:</strong>

## other
Nickname NICKNAME
RelayBandwidthRate 30 KBytes
Log notice file /var/log/tor/info.log

Da ich nicht gerade die schnellste DSL Leitung besitze, muss ich den Traffic auf 30 KB/s beschränken. Anschließend nicht vergessen, noch den Port 9913 in der Firewall freizugeben.

Nun noch ein Neustart von Tor:

# /etc/init.d/tor restart

Jetzt kann man sich in der oben angegebenen Logdatei informieren, ob die Config Datei fehlerfrei ist und der Dienst startet. siehe www.torproject.org/bridges.html.en

Middle Node

Mit der gerade beschriebenen Konfiguration habe ich allerdings ein Problem: ich weiß nicht, obs funktioniert oder nicht. Da eine Bridge ja nicht jedem bekannt sein darf, taucht sie natürlich in keiner Liste auf. Ich konnte nicht ermitteln, ob sich überhaupt schon mal jemand mit meiner Bridge verbunden hat. Laut dem Log - File müsste es theoretisch gehen aber evtl. bin ich 99% der Zeit im Leerlauf, wer weiß ….

Aus diesem Grund habe ich mich jetzt entschieden, einen normalen Middle Node zu betreiben. Dazu muss man nicht mal viel ändern. Trotzdem hier nochmal die gesamte Konfiguration der torrc für einen Middle Node

# nano /etc/tor/torrc
# torrc config file
# möchte den Server nicht als  Tor - client sondern nur als Relay nutzen
# brauche daher den SocksPort nicht
SocksPort 0
# der Port für das Relay, unbedingt in der Firewall freigeben
# man kann irgendeinen Port nehmen
ORPort 9913
Nickname NICKNAME
# maximale Bandbreite, orientiert sich am verfügbaren Upload
RelayBandwidthRate 30 KBytes
RelayBandwidthBurst 40 KBytes
# folgendes ist wichtig, wenn man ein Middle Node sein will
ExitPolicy reject <strong>:</strong>
# Log File, Ausführlichkeitsstufe 3 von 5
Log notice file /var/log/tor/info.log

Abspeichern und Tor neu starten. Anschließend sucht man in der info.log nach einer Zeile wie dieser:

self-testing indicates your ORPort is reachable from the outside. Excellent

Hat man diese gefunden, sollte es funktionieren.

Erreichbarkeit und Durchsatz prüfen

Das kann man u.A. auf der folgenden Seite tun: http://torstatus.all.de/router_detail.php?FP=YourFingerprint Der Fingerprint des Servers steht im Log - File, Ausgabe direkt nach dem Start des Tor Daemons mit:

grep fingerprint /var/log/tor/info.log

Die Statistik für meinen Middle Node kann hier eingesehen werden.

Bis man diese Seite zu sehen bekommt können schon ein paar Stunden vergehen. Außerdem funktioniert es nur, wenn man keine Bridge ist (daher mein oben beschriebenes Problem).

In diesem Zusammenhang möchte ich auch nochmal auf das projekt www.torservers.net verweisen, welches das Ziel verfolgt, dem Tor Netzwerk einen leistungsstarken Exit Node bereitzustellen. Wem es nicht möglich ist, einen eigenen Server zu betreiben, der kann diesen Exit Node mit einer Spende am Leben erhalten.

Quellen