HowTo: TOR Hochleistungs Relay aufsetzen !


Die Internet Zensur nimmt weltweit insbesondere in autoritären und diktatorischen Staaten wie Russland immer weiter zu. Eine effektive und vor allem kostenfreie Möglichkeit digitale Zensur zu umgehen stellt das TOR Netzwerk bzw. der TOR-Browser dar. Über die Relay Server des TOR Netzwerks ist es möglich die eigene IP Adresse zu verschleiern und Nationale Zensurmechanismen durch Verwendung von Exit Proxys (Exit Nodes) im Ausland zu umgehen.

Um diese Infrastruktur zu betreiben ist das TOR Netz in hohem Maße auf Freiwillige angewiesen, welche Server und Bandbreite zur Verfügung stellen. Deswegen stelle ich hier eine Anleitung zur Verfügung wie sich ein TOR Server mit hoher Bandbreiten Kapazität installieren und betreiben lässt.

Voraussetzung für diese Anleitung ist das ihr über einen VPS oder dedizierten Server mit Debian oder Ubuntu Linux verfügt. Ein effizienter TOR Server lässt sich dabei bereits mit einem kostengünstigen VPS mit 1-2 CPU Cores betreiben. Wichtig hierbei ist lediglich das ihr über eine Traffic Flatrate verfügt, denn die Menge der transferierten Daten kann sehr schnell sehr groß werden. Mein derzeitiger Tor Server läuft mit ca. 20 MB die Sekunde, was
einem Datentransfer von 1.728.000 MB pro Tag (1728 Gigabyte) entspricht. Auf den Monat gerechnet, können das dann locker mehr als 50.000 GB werden.

Achtung: Diese Anleitung richtet sich an erfahrene Linux Nutzer und Admins, da
Konfigurationsfehler bei der Einrichtung von TOR Servern genau wie bei anderen Darknets zu Sicherheits und Haftungsrisiken führen können. Die Befolgung dieses Leitfadens durch interessierte Leser, erfolgt somit ausdrücklich auf eigenes Risiko.

Schritt 1: Tor installieren

Tor lässt sich über Debian/Ubuntu sehr einfach aus den Repositories installieren. Hierzu reicht der einfache Kommandozeilen Befehl:

sudo apt-get install tor

Alternativ kann man natürlich auch den Source-Code der aktuellen TOR Version auf der TOR Webseite (https://www.torproject.org/download/tor/) herunterladen und selbst kompilieren.

Mit dem Befehl:

./configure CFLAGS=‘-O3 -pipe -march=native‘

lassen sich noch zusätzliche Compiler Optimierungen freischalten, welche die Performance des Programms während der Laufzeit erhöhen können. Mit dem Befehl „make“ lässt sich das Ganze dann kompilieren.

Hinweis: Wenn ihr selbst kompiliert wird die torrc Datei über die ihr eure TOR Node konfigurieren könnt, übrigens unter /usr/local/etc/tor angelegt und nicht wie bei der Installation über apt-get unter /etc/tor. Die ausführbare „Tor“ Datei befindet sich dann im Unterordner /src/app und kann auch ohne Systemweite Installation mit beliebigen Nutzerrechten ausgeführt werden.

Schritt 2: Tor konfigurieren

Jetzt muss der TOR Server noch konfiguriert werden. Dies geschieht über die
Konfigurationsdatei torrc welche bei Ubuntu/Debian standardmäßig im Verzeichnis /etc/tor liegt. Um diese zu bearbeiten müsst ihr Sie mit einem Texteditor eurer Wahl mit Root-Rechten aufrufen. Dabei müssen dann folgende Werte angepasst bzw. freigeschaltet werden (das #Zeichen vorne dran entfernen).

RunAsDaemon 1

Durch diesen Wert wird sichergestellt, dass Tor immer als Daemon im Hintergrund mitläuft und automatisch gestartet wird.

ORPort 9001

Dies ist der Standard Port auf dem der Tor-Server Verbindungen aus dem Internet entgegennimmt. Diesen dürft ihr aber auch gerne auf einen anderen Zahlenwert abändern, um Port-basierte Sperren des TOR Netzwerkes zu erschweren.

Nickname – Namen-eines-Torservers

Der Nickname unter welchem eurer Server im Tor Netzwerk bekannt gemacht wird,

RelayBandwithRate 10000KB

RelayBandwithBurst: 20000KB

Dieser Wert gibt an wie viel Bandbreite der Tor-Server maximal nutzen darf. Im oben genannten Beispiel sind das 10-20 Megabyte pro Sekunde. Wenn ihr über einen extrem leistungsstarken Server verfügt, könnt ihr den Wert aber auch weiter erhöhen.

DirPort 9030

Dieser Eintrag ist optional. Wenn aktiviert, stellt euer Server für die Nutzer des Tor-Netzwerks einen Mirror mit directory Informationen bereit.

Achtung, dies kann eine sehr hohe Bandbreiten-Auslastung verursachen.

ExitPoliciy reject *:*

Dieser Wert ist sehr wichtig. Er gibt an, ob euer TOR-Server als Exit Relay fungieren soll. Über die Exit Relays können Tor-Nutzer auf das freie Internet zugreifen. Der oben angegebene Wert, gibt an, dass euer Tor-Server KEIN Exit-Relay ist.

Falls ihr euch entschließt einen Exit-Relay zu betreiben, würdet ihr dem Tor-Netz natürlich sehr helfen. Dies ist jedoch mit Risiken verbunden. Zum Beispiel wenn jemand über die IP-Adresse eures Servers dann P2P Filesharing betreibt und ihr die Abmahnung wegen Urheberrechtsverletzung erhaltet. Ein Exit-Relay zu betreiben empfiehlt sich in Deutschland daher nur, wenn ihr als Verein oder Freifunkinitiative unter das Providerprivileg fallt und somit von der Haftung befreit seid.

Optional: Monitoring mit nyx

nyx ist ein kleines Tool, welches dabei hilft den Status des eigenen TOR Servers zu überwachen. Es lässt sich unter debian/ubuntu mit einem „apt-get install nyx“ installieren. Mit dem Befehl „nyx“ lässt sich dieses dann einfach starten.

Um mit nyx auf Tor zugreifen zu können, muss dann jedoch zuvor in der torrc Datei der Control Port aktiviert werden:

ControlPort 9051

Hier empfiehlt es sich aus Sicherheitsgründen zuvor ein Passwort für den ControlPort zu generieren, um den Zugriff durch unautorisierte Personen zu verhindern. Dies lässt sich mit folgendem Kommandozeilen-Befehl bewerkstelligen:

tor –hash-password DasPasswort

Der dabei generierte Hashwert wird dann in der Torrc Datei hinter folgendem Wert eingetragen:

HashedControlPassword

Ein Zugriff mit nyx auf Tor ist dann nur noch mit Eingabe des korrekten Passworts möglich.

Sobald der Tor-Server eingerichtet ist, wird es noch einige Tage dauern bis dieser im Tor-Netz freigeschaltet ist und Daten Senden und empfangen wird.


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert