Anonymisierter Internetzugang für ein ganzes Netz mit Tor

katalinks, 123RF

Tarnkappe

Tor hat sich als Lösung zum anonymen Surfen etabliert. In der Kombination mit Squid und Privoxy kann es seine Stärken noch besser ausspielen.
ADMIN 11/13 stellt die besten Lösungen vor und klärt, ob Browser-Plugins, Anonymisierer sowie Verschlüsselung wirklich helfen. Weitere Themen: Small ... (mehr)

In Zeiten, in denen Anonymität so selten ist wie ein richtig gesetzter Genitiv im Ruhrpott, ist der Bedarf nach einer Lösung groß. Tor ist solch eine und bietet ein Stück weit das, was längst verloren geglaubt war: Anonymes Surfen im Internet. Vereinfacht ausgedrückt funktioniert es so: Man nehme viele Teilnehmer, ein vermaschtes Netzwerk, schüttle alles kräftig durch und schon hat man einen anonymisierten Zugang ins Netz.

Basierend auf der Idee des Onion-Routing, sprich dem Routen von Anfragen über ständig wechselnde Router in einem verteilten Netz, werden Anfragen in einem vermaschten Netz über stetig wechselnde Knoten geschickt (siehe Abbildung 1). Weder der Einstiegspunkt weiß, wo er herauskommt, noch der Ausstiegspunkt weiß, von wem die Anfrage gestellt wurde.

Abbildung 1: Das Onion-Routing im Tor-Netzwerk verschleiert die Identität der Endgeräte.

Sie benutzen bereits Tor? Sie haben auf Ihrem PC, Mac oder Endgerät XY den Tor-Client installiert? Sehr gut, aber was ist mit ihren übrigen Endgeräten? Was ist mit Ihrem Smartphone, Ihrem Fernseher oder Ihrem Toaster? Dieser Artikel zeigt, wie Sie einen eigenen Proxy-Server mit Tor-Anbindung aufsetzen, damit all Ihren Endgeräten der gleiche Schutz zuteil wird.

Die Basis hierfür bietet der gut geschüttelte Software-Cocktail von Tor, dem eigentlichen Anonymisierungsdienst, zusammengemischt mit Squid, dem De-facto-Standard für Proxy-Server, und Privoxy als Filter, um keine Browser-Informationen preiszugeben. Der Aufbau des fertigen Konstrukts ist in Abbildung 2 dargestellt.

Abbildung 2: Die Kombination von Tor, Squid und Privoxy sorgt für lückenlose Anonymisierung.

Wie dort zu sehen ist, starten jeweils fünf Tor- und Privoxy-Instanzen, die von einem Squid-Proxy genutzt werden. Dies ist deshalb notwendig, da ansonsten die Clients nur der Reihe nach und nicht parallel arbeiten können. Passen Sie daher die Anzahl der Instanzen Ihrer Umgebung an. Es gilt: Mehr Clients = mehr Instanzen.

Installation

Installieren Sie zunächst über die Paketverwaltung Ihrer Wahl die Pakete »squid« , »privoxy« und »tor« (unter Debian und Ubuntu sind diese bereits in den Standard-Repositories verfügbar). Beenden Sie anschließend die automatisch gestarteten Dienste, zum Beispiel unter Ubuntu mit:

service squid3 stop
service privoxy stop
service tor stop

Über den Tor-Daemon kann Ihr System Anfragen in das Tor-Netzwerk schicken. Zunächst müssen Sie Tor so konfigurieren, dass fünf Instanzen gleichzeitig starten, und je eine eigene Konfigurationsdatei anlegen. Speichern Sie dafür die Einstellungen aus Listing 1 in die Datei »/etc/tor/template.torrc« und führen Sie anschließend das nachstehende kleine Bash-Konstrukt aus:

Listing 1

template.torrc

 

cd /etc/tor ; for i in 1 2 3 4 5 ; do sed "s/TEMP/${i}/g" template.torrc >> /etc/tor/torrc-${i} ; done

Diese For-Schleife erzeugt fünf Konfigurationsdateien und ändert sowohl die »SocketPorts« und »ControlPorts« als auch »PID« aus der Template-Datei. Sie finden nun unter »/etc/tor« die Dateien »torrc-1« bis »torrc-5« . Nun müssen Sie noch die Verzeichnisse für die Daten (»DataDirectory« ) anlegen, damit die Prozesse auch hineinschreiben können. Dafür kommen erneut die Fähigkeiten der Bash zum Einsatz:

install -o debian-tor -g debian-tor -m 700 -d /var/lib/tor{1..5}

Dem Befehl »install« werden der Benutzer, die Gruppe und die Rechte übergeben, nach dem Parameter »-d« folgt das Verzeichnis und durch die Bash-Auflistung »{1..5}« wird der Befehl fünfmal ausgeführt.

Abschließend müssen Sie noch das »init.d« -Skript anpassen, damit der Dienst auch fünfmal mit den korrekten Verzeichnissen und PIDs gestartet oder beendet wird. Falls Ihnen die Anpassungen zu umfangreich sind, haben wir eine Variante für Debian und Ubuntu vorbereitet, die es auf dem ADMIN-Server zum Download gibt [1]. Beachten Sie aber, dass dieses Skript nur für fünf Instanzen ausgelegt ist. Wenn Sie mehr (oder weniger) einsetzen wollen, müssen Sie das Skript entsprechend anpassen (Variable »INSTANCE« ).

Privoxy

Privoxy ist ein Filter-Proxy, der dabei hilft, beim Websurfen seine Privatsphäre zu wahren. Wie schon bei Tor müssen Sie auch hier zunächst fünf Konfigurationsdateien anlegen. Speichern Sie daher die Datei aus Listing 2 unter »/etc/privoxy/template.config« und führen Sie nachstehende Kommandozeile aus:

Listing 2

template.config

 

for i in 1 2 3 4 5 ; do sed "s/%VAR%/${i}/g" template.config >> /etc/privoxy/config-${i} ; done

Das Kommando legt die fünf Konfigurationsdateien »config-1« bis »config-5« an und stellt gleichzeitig das Verzeichnis für Log-Dateien (»logdir« ), den Privoxy-Port (»listen-address« ) und den Proxy-Server ein, von dem Privoxy die Daten beziehen soll (»forward-socks5« ).

Zu guter Letzt muss auch das Init.d-Skript von Privoxy angepasst werden, damit auch dieser Dienst fünfmal mit den richtigen Verzeichnissen und PIDs gestartet oder beendet wird. Auch dieses Skript ist unter [1] zu finden. Es ist nur für fünf Instanzen ausgelegt. Wenn Sie mehr (oder weniger) einsetzen wollen, müssen Sie das Skript anpassen.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2020