Kleiner Beitrag für Freiheit — Tor-Bridge

Der Blog ist aus Performancegründen umgezogen nach: http://greplacement.fherb.de (Link zu diesem Artikel)
Dieser Artikel wird hier nicht mehr aktualisiert.

 

Um es kurz zu machen 3 Start-Thesen:

  1. Unsere häusliche Bandbreite ist begrenzt.
  2. Die Flaschenhälse von Tor sind derzeit nicht die Tor-Relays.
  3. Das Risiko, die Polizei mit einer Hausdurchsuchung und nachfolgender Hardwarebeschlagnahme vor der Tür zu haben, ist zu hoch.
  4. Unterstützung des Tor-Netzwerkes von zu Hause ist trotzdem sinnvoll.
  5. Die regelmäßige Neuzuweiseung der IP-Adresse des häuslichen Netzwerkes kann auch ein Vorteil sein.

Anmerkungen

  • Wegen 1) und 2) lohnt es sich derzeit auch im Sinner der „Gemeinschaft“ nicht sonderlich, weitere sogenannte Tor-Relays zu Hause zu betreiben.
  • Es mangelt an Tor-Exit-Nodes. Diese zu Hause zu betreiben ist u.a. auch wegen 3) und der Frage der Störerhaftung in Deutschland derzeit gar nicht zu empfehlen. (Und diese privat bei einem Hoster zu betreiben sollte auch nur, wer mit Stress umgehen kann. Nützlich und wichtig ist das allerdings!)
  • Für die weltweite freiheitliche „Gemeinschaft“ gibt es aber eine Unterstützung 4), die sinnvoll zu Hause betrieben werden kann: Die Tor-Bridge. Und wegen 5) ergibt sich ein zusätzlich positiver Effekt.

Auf allgemeine Beschreibungen zu Tor möchte ich nicht eingehen. Dazu finden sich im Netz massenweise Informationen. Hier deshalb nur speziell…

…die Tor-Bridge

Restriktive Staaten

Tor wird oft auch von kriminellen Elementen zur Anonymisierung verwendet. Diese finden sich aber vorrangig in den westlichen Ländern USA, wie auch Deutschland. Diese Leute können sich jedoch problemlos über offen publizierte Tor-Relays verbinden. Sie gehen über diesen Weg kein Risiko ein.

In Staaten, in denen jedoch Anonymisierung aus politischen Gründen unterbunden werden soll, werden die offiziellen Adressen der weltweiten Tor-Relays erfasst und vorsorglich gesperrt. Für Menschen in diesen Ländern besteht nur dann die Möglichkeit, sich mit Tor zu verbinden, wenn noch nicht gesperrte IP-Adressen einen Kanal in das Tor-Netzwerk ermöglichen. Diese Zugangspunkte sind die sogenannten Tor-Bridges.

Da die IP-Adressen letztlich doch irgendwann von den staatlichen Stellen erkannt werden, „verbrennen“ diese Adressen irgendwann. Sprich: sie werden ebenfalls blockiert. Höchst sinnvoll ist also, wenn Tor-Bridges immer wieder an neuen IP-Adressen aktiv werden. Und das ist nun der Vorteil der in Deutschland üblichen DSL-Zugänge: Nach 24 Stunden wird die Verbindung von Provider zu Haushalt getrennt und mit einer neuen IP-Adresse neu hergestellt. Kabeldienste haben teilweise andere Zeiträume. Mein Kabeldeutschland-Zugang wird nur aller paar Monate neu verbunden.

Es macht demnach großen Sinn, seinen privaten Zugang als Tor-Bridge zur Verfügung zu stellen.

Restrisiko: Das Risiko einer Tor-Bridge ist gleich groß eines Tor-Relays. Die Adresse des Tor-Relay wird aber nicht veröffentlicht, sondern muss über speziellem Weg vom Nutzer über Tor „erfragt“ werden. Das tun wegen des zusätzlichen Aufwands auch nur die, die an keinen öffentlichen Tor-Relay kommen. Aus diesem Grund ist der Traffic im Mittel (auch aus eigener Erfahrung) ausgesprochen gering. Aber: Es ist im Sinne des Freiheitsgedankens wichtig, dass dieser Weg weltweit offen ist!

Neben der IP-Adresse können von restriktiven Staaten auch ganze Portbereiche gesperrt werden. Aus diesem Grund ist es sinnvoll, für eine Tor-Bridge andere Ports vorzusehen. Insbesondere solche Ports, die für gewöhnliche Dienste verwendet werden, die also vermutlich nicht gesperrt werden. Ideal dafür das Port 80 für http oder 443 für https. Oder die e-Mail-typischen Ports, FTP… . Ich gehe weiter unten auf diese Problematik nochmal ein, denn einige Ports benötigen wir auch für uns.

Installation

Tor ist über apt-get installierbar und wird nach der Installation sofort gestartet. Wer Tor erst per Hand konfigurieren möchte, sollte also Tor unmittelbar nach der Installation wieder anhalten. Insbesondere kann ich nicht sicherstellen, dass nicht Tor als Exit-Node vorkonfiguriert ist. Derzeit ist das nicht so. Aber man sollte sich nicht darauf verlassen. Also hier erst mal installieren und dann sofort stoppen:

apt-get install tor
service tor stop

Einen Tor-Exit-Node kann ich niemanden für zu Hause empfehlen. Aus diesem Grund sehen wir zuerst, wie die Konfiguration eingestellt ist:

nano /etc/tor/torrc

Die Zeile

#ExitPolicy reject *:* # no exits allowed

Ist unbedingt zu deaktivieren:

ExitPolicy reject *:*

(Weiter unten findet sich noch eine Kopie der aktiven Zeilen als Kurz-Konfiguration zum Kopieren entsprechend der Beschreibung auf dieser Seite.)

Das bedeutet gleichzeitig, dass alle anderen Zeilen, die mit ExitPolicy starten mit # auskommentiert sind.

Damit wir Tor definitiv nicht zum Exit-Node. Wenn diese Zeile ohne # enthalten ist, sind wir vor Polizei und sonstigen Schwierigkeiten mit dem Provider geschützt! Das ist sehr wichtig!

Hier liegt der möglicherweise grenzwertigste Grad, den uns die Konfiguration eines Servers verschaffen kann! Ein ähnliches Risiko gehen wir ein, wenn wir einen öffentlich erreichbaren FTP-Server oder Samba-Server oder Vergleichbares ohne sichere Zugangssperre installieren und längere Zeit unbeobachtet laufen lassen. Jedoch zur Beruhigung: Solange unser DSL-Router (oder der Router eines vergleichbaren Internetzugangs) die entsprechenden Ports nicht durchleitet (Router-Firewall), ist noch keine Gefahr in Verzug.

Nochmal kurz zur Gefahr: Sie resultiert einzig daraus, dass Nutzer bewusst gegen das Gesetz verstoßen und sich dazu mit Tor anonymisieren. In vielen Fällen geht es um Urheberrechtsverstößen. Als Exit-Server-Betreiber kennt man die entsprechenden Abuse-Mails. Ich habe das selbst einmal getestet. Mein Test-Tor-Exit brachte innerhalb der ersten 24 Stunden einen solchen Abuse-Vorgang. Wer sowas aktiv durchstehen möchte, sollte sich mit seinem Provider vorher abstimmen. Unterm Strich ist man als Tor-Exit-Betreiber in Deutschland im Recht und braucht nichts zu befürchten. Aber es kann sehr viel Aufwand bedeuten, dies  durchzusetzen. Zu befürchten ist also Aufwand und Stress! (Wobei die Zahl der bekannt gewordenen Hausdurchsuchungen wegen Tor-Exit-Nodes in Deutschland an wenigen Fingern abzählbar ist.) Und einen zeitweiligen Verlust seiner gesamten Rechentechnik über Monate wegen Beschlagnahme bei einer Durchsuchung. Aus diesem Grund empfehle ich ausschließlich die Unterstützung von Tor zu Hause per Tor-Relay (derzeit weniger sinnvoll zumal die häuslichlen Upload-Bandbreite oft sehr begrenzt ist) und Tor-Bridge (sehr sinnvoll). Auf alle Fälle aber nicht als Tor-Exit-Node!

Konfiguration als Bridge

ORPort

Standard ist Port 9001

Der ORPort ist der Port, auf dem Tor Datenverbindungen aus dem Netz entgegen nimmt. Dieser Port muss von aussen erreicht werden. Das eingestellte Port muss also am Router und in der Firewall freigegeben sein.

Für das Bridge-Relay empfiehlt es sich nicht, diesen Standard-Port zu verwenden, da er durch den Provider oder den Staat des Nutzers anderweitig blockiert werden kann. Nicht blockiert sind Ports, die für gängige, unverzichtbare Dienste benötigt werden. Eine Übersicht über Standard-Ports findet sich hier.

Folgende Ports sind besonders gängig und für den Bridge-ORPort ideal:

20…25, 43, 80, 110, 115, 143, 220, 443, 465, 873, 902, 989, 990, 992, 993, 995

Nachfolgende Ports sind auch typisch für bestimmte Dienste und sollten auch in den meisten Fällen von potentiellen Nutzern nutzbar sein:

1503, 1677, 1970, 1971, 2967, 3074, 3283, 3690, 3724, 4664, 4711, 4712, 5500, 5800, 5900, 5938, 8000, 8001, 17500, 25565

Solange wir keinen https-Server zu Hause betreiben, empfiehlt sich, dieses Port zu verwenden:

ORPort 443

Oder der Port für IMAP über SSL:

ORPort 993

Und wer sich jetzt unsicher ist, was er nehmen sollte: Betreibst Du einen https-Webserver oder einen IMAP-Mail-Server zu Hause, kennst Du Dich mit der Frage der Ports ausreichend gut aus. Kennst Du Dich nicht damit aus, hast Du auch keine solche Technik laufen und kannst einen der beiden Vorschläge bedenkenlos wählen.

Das gewählte Port ist vom Router für das TCP-Protokoll freizugeben (an den RasPi durchzuleiten). Das muss man entsprechend der Firmware des Routers über dessen Web-Bedienschnittstelle separat freigeben. Aber auch hier finden sich gewiss entsprechende Beschreibungen zu Deiner Hardware im Netz.

Wer seinen RasPi mit einer Firewall versehen hat, der weiß, dass auch dort dieser Port freizugeben ist.

BridgeRelay

Die Kommentierung in Zeile

#BridgeRelay 1

ist zu entfernen. Damit konfigurieren wir den Service als Bridge. Nur dadurch wird die IP-Adresse mit dem OrPort nicht mehr im Netz veröffentlicht.

BridgeRelay 1
DirPort

Standard: DirPort 9030

Der Directory Port ist standardmäßig aktiviert.

DirPort 9030 # what port to advertise for directory connections

Für die Bridge wird der Port nicht verwendet. Lassen wir ihn aktiviert, meckert Tor beim Start ein wenig vor sich hin. Also deaktivieren wir ihn gleich mittels # :

#DirPort 9030

ControlPort

Standard: ControlPort 9051

Wenn wir die Funktion von Tor mit dem Tool arm ansehen wollen, benötigen wir diesen Control Port. Dieser Port wird nicht zum Internet durchgeschaltet. Für die Nutzer ist ausschließlich der OrPort interessant.

ControlPort 9051

Alle weiteren Konfigurationen können bzw. sollen deaktiviert sein. arm meckert dann zwar an, dass Nickname und Contact Info nicht konfiguriert sind, aber dass ist unkritisch.

Sollte widererwarten der Traffic zu groß werden, kann man später mit den Accounting…-Einstellung bzw. der Bandbreitenbegrenzung gegensteuern. Wie der Traffic liegt, sehen wir mittels arm.

Gesamtkonfiguration…

… in Kurzform:

nano /etc/tor/torrc
ExitPolicy reject *:*
ORPort 443 # oder 993 oder...
BridgeRelay 1
ControlPort 9051

Tor starten

Wir starten Tor nun mit

service tor start

Spätere Konfigurationen in torrc können ohne Neustart mit

service tor reload

übernommen werden.

ARM

Zur Beobachtung der Arbeit unseres Tor-Dienstes wird ARM verwendet. Installation:

apt-get install tor-arm

Danach Start mit

arm

Wie bei allen anderen Konfigurationen: Wir benötigen root-Rechte. Also u.U. mit sudo aufrufen, wenn wir gerade keinen Administrator-Account mit root-Rechten verwenden.

Beachte: Über das Menü von arm kann man die Konfiguration von Tor ändern. Dies wird dann aber in einer anderen Datei gespeichert und nachfolgend nicht mehr die /etc/tor/torrc verwendet.

Was arm anzeigt, ist größtenteils selbsterklärend. Details finden sich im Web an vielen Stellen.

Tor verbindungsbereit?

Ob der Router und gegebenfalls die Firewall richtig eingestellt sind und die Bridge arbeiten kann, lässt sich mit arm prüfen.

Bei meinen Tests erhielt ich aber die Meldung

20:55:51 [NOTICE] Tor has successfully opened a circuit. Looks like client functionality is
   working.

sowie in den Diagrammen schien ein wenig Datentransfer zu laufen. Und das, obwohl ich für diesen Test das OrPort explizit im Router gesperrt hatte.

Diese Meldung wiederum scheint allerdings vollkommen unkritisch zu sein:

21:03:18 [ARM_NOTICE] Unable to prepopulate bandwidth information (insufficient uptime)

Derzeit erscheint mir diese Testmethode über die Notices nicht sonderlich zuverlässig, unverzüglich zu einer klaren Aussage zu kommen.


Kurz nach Veröffentlichung des Artikels hatte ich dann die ersehnte Meldung. So muss sie aussehen, wenn alles läuft:

22:26:08 [NOTICE] Self-testing indicates your ORPort is reachable from the outside.
   Excellent. Publishing server descriptor.

 

Schreibe einen Kommentar

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