HowTo: Tor/Privoxy unter Linux einrichten.

Status
Für weitere Antworten geschlossen.

Rain_Maker

Administrator
Teammitglied
Hallo,

In diesem kleinen HowTo möchte ich die Installation/Konfiguration des Anonymizers Tor in Verbindung mit dem Filterproxy Privoxy vorstellen.

Dabei werde ich mich zwar auf SuSE (10.0) und Ubuntu (5.10) konzentrieren, Nutzer anderer Distributionen sollten sich jedoch zumindest die Konfiguration ansehen und können dort hoffentlich wertvolle Informationen erhalten.

0. Warum das Ganze?

Angesichts der fortschreitenden Bestrebung unserer Gesetzgeber, das Grundrecht auf Privatsphäre - nicht nur beim Surfen im Netz - einzuschränken (und das immer schön unter dem Deckmäntelchen der "Terrorbekämpfung", was vielleicht wirklich dahinter steckt kann man z. B. hier nachlesen:http://www.chip.de/news/c1_news_18539262.html), stellen Lösungen wie Tor einen Weg dar, sich zumindest Teile dieses Grundrechts wieder zurück zu holen.

1. Wo bekomme ich Tor?

Die Homepage des Tor-Projekts ist: Tor: anonymity online.

Es stehen Downloads für verschiedene Linux-Distributionen, sowie Mac OS, BSD und Windows zur Verfügung. Da Tor ein Open Source Projekt ist, welches unter der 3-Clause-BSD-Lizenz steht, kann natürlich auch der Quellcode zum selbst Kompilieren heruntergeladen werden.

SuSE - Nutzer können ein fertiges RPM bei GURU (kann auch unter Yast eingebunden werden, siehe Additional YaST Package Repositories - openSUSE) herunterladen.

Guru's RPM Site

Wer apt nutzt, dem reicht, genauso wie Usern von Debian-basierten Systemen wie Ubuntu, ein einfaches

Code:
su

(Passwort)

apt-get install tor
Es bestehen Abhängigkeiten zu den Paketen libevent, openssl und zlib, welche gegebenenfalls nachinstalliert werden müssen.

2. Wo bekomme ich Privoxy und wozu brauche ich das zusätzlich?

Tor ist ein reiner SOCKS-Proxy. Dies hat den Vorteil, daß man damit eine große Anzahl von Anwendungen "torifizieren" kann.

Tor: Dokumentation

TheOnionRouter/TorifyHOWTO - Noreply Wiki

Ein Nachteil der Nutzung von Tor mit einem Browser besteht darin, daß Browser ihre DNS-Anfragen leaken, d.h. der jeweilige ISP sieht zwar nicht, welche Seite mit Tor als SOCKS angesurft wird, jedoch kann er die Nameserver-Anfragen sehen. Deshalb muß Tor über einen lokalen HTTP-Proxy, umgeleitet werden, welcher dafür sorgt, daß auch keine DNS-Anfragen direkt hinaus gehen.

Hierzu bietet sich Privoxy an.

http://www.privoxy.org/

Ein weiterer Vorteil von Privoxy, es ist eigentlich als Filterproxy zur Ausblendung unerwünschter Inhalte wie Werbung, Cookies usw. gedacht. ("Junkbuster")

Fertige Pakete können über apt mit einem einfachen:

Code:
su

(Passwort)

apt-get install privoxy
installiert werden.

SuSE-Nutzer können auch auf das Paket auf der CD/DVD zurückgreifen.

3. Konfiguration

Nachdem die Pakete installiert sind, können wir uns an die Konfiguration machen. Das Ganze ist recht einfach und muß auch nur einmal gemacht werden, beim Updaten von Tor bleiben die Konfigurationsdateien erhalten.

a) Tor konfigurieren.

Tor läuft eigentlich "out of the Box", jedoch sollte man sich eine Konfigurationsdatei "torrc" in /etc/tor/ anlegen. Das ist ausgesprochen leicht, denn im selben Verzeichnis liegt die Datei "torrc.sample", die vernünftige Einstellungen enthält und einfach kopiert werden kann (als root, Rechte beachten, die Datei sollte zumindest für alle lesbar sein).
Tor hört standardmässig auf Port 9050, mit den Einstellungen aus der torrc.sample ist dieser Port NUR für Localhost offen, was für die reine Client-Nutzung zu empfehlen ist. Wer einen Tor-Server betreiben will, der möge sich zur Konfiguration auf der HP von Tor informieren:

Tor: Dokumentation

Code:
su

(Passwort)

cd /usr/local/etc/tor/

cp torrc.sample torrc
b) Privoxy konfigurieren.

Nun müssen wir Privoxy noch mitteilen, Tor zu benutzen.

Hierzu editieren wir als root die Datei /var/lib/privoxy/etc/config und ändern die Einträge:

Code:
#      and jarfile are located)
#  1.6. jarfile
#      jarfile (Unix) or privoxy.jar (Windows)
#      The jarfile may grow to ridiculous sizes over time.
jarfile jarfile
#  5.2. forward-socks4 and forward-socks4a
#      The difference between forward-socks4 and forward-socks4a
#        forward-socks4a   /              socks-gw.example.com:1080   www-cache.example-isp.net:8080
#        forward-socks4   /               socks-gw.example.com:1080  .
in

Code:
#      and jarfile are located)
#  1.6. jarfile
#      jarfile (Unix) or privoxy.jar (Windows)
#      The jarfile may grow to ridiculous sizes over time.
# jarfile jarfile
#  5.2. forward-socks4 and forward-socks4a
#      The difference between forward-socks4 and forward-socks4a
#        forward-socks4a   /              socks-gw.example.com:1080   www-cache.example-isp.net:8080
#        forward-socks4   /               socks-gw.example.com:1080  .
        forward-socks4a   /               localhost:9050  .
Durch Auskommentieren der Zeile jarfile jarfile wird das Logging für Privoxy ausgeschaltet, da der Log sonst (wie man ja auch im Kommentar lesen kann) sehr, sehr groß werden kann. Der forward-Eintrag teilt Privoxy mit, es soll den lokal laufenden SOCKS-Proxy auf Port 9050 (also Tor) verwenden.

4. Start von Tor/Privoxy

a) Privoxy sollte sowohl unter SuSE als auch unter Ubuntu automatisch beim Hochfahren gestartet werden. Unter SuSE kann dies im Runlevel-Editor kontrolliert/geändert werden, unter Ubuntu kann man eines der beiliegenden Tools zur Einstellung der Systemdienste verwenden.

Der Start/Stop/Neustart von Privoxy kann unter SuSE mit:

Code:
su

(Passwort)

rcprivoxy start (stop, restart, je nachdem)
auch manuell bewerkstelligt werden.

Unter Ubuntu liegt das Script in /etc/init.d/ und kann (ebenfalls als root) mit

Code:
su

(Passwort)

/etc/init.d/privoxy start  (stop, restart usw.)
aufgerufen werden.

Tor wird unter Ubuntu (und wohl auch allen anderen Debian-basierten Distributionen) automatisch beim Systemstart geladen.

Unter SuSE muß der Start manuell geschehen, wer z.B. beim Start von KDE Tor starten will, der kann einen Eintrag im Autostartordner vornehmen. Manuell kann der Start aus der shell (als USER!) mit "tor" erfolgen.

Edit(RM): Die neueren Tor rpm-Pakete von Guru scheinen mittlerweile ebenfalls ein Script zum automatischen Start von Tor beim Booten mitzubringen. Gegebenenfalls entfällt also dieser Punkt bei SuSE nun. Wer sich Tor allerdings selbst kompiliert hat, der sollte diesen Punkt immer noch beachten oder sich selbst ein geeignetes Script erstellen.

So sieht das in etwa aus:

Code:
tor

Apr 15 10:02:16.824 [notice] Tor v0.1.1.18-rc. This is experimental software. Do not rely on it for strong anonymity.
Apr 15 10:02:16.826 [notice] Initialized libevent version 1.1 using method epoll. Good.
Apr 15 10:02:16.826 [notice] connection_create_listener(): Opening Socks listener on 127.0.0.1:9050
Apr 15 10:02:18.365 [notice] We now have enough directory information to build circuits.
Apr 15 10:02:20.009 [notice] Tor has successfully opened a circuit. Looks like client functionality is working.
5. Browser konfigurieren.

Nun müssen wir noch unserem Browser mitteilen, daß wir Privoxy als Proxy verwenden wollen (welches dann wiedrum ja auf Tor zurückgreift).

Deshalb muß unter den Proxy-Einstellungen als Proxy folgendes ausgewählt werden.

Host: localhost (oder 127.0.0.1)

Port: 8118

Privoxy kann NUR als Proxy für http und https verwendet werden, ftp funktioniert NICHT.

Dies entkräftet zumindest auch die Aussage einiger Kritiker solcher Anonymizer, man würde damit ja "eh fast nur illegale Downloads ziehen", mal davon abgesehen, daß dazu die Geschwindigkeit auch meist zu langsam wäre.

Ich bitte Euch auch darum Tor/Privoxy NICHT zum Filesharing zu verwenden, das ist nicht der Sinn der Sache und belastet UNNÖTIG das Tor-Netzwerk.

Firefox/Mozilla/Seamonkey-User können mit dem Tool "switchproxy" eine sehr nützliche Extension installieren, die einem das schnelle Umschalten zwischen verschiedenen Proxy-Einstellungen ermöglicht.

Tor: SwitchProxy Install Instructions

Ob die Verbindung wirklich "torifiziert" ist, kann man z.B. hier

http://showmyip.com/

oder hier

Show My Ip. Proxy, Socks or Direct connection? Detecting your internet connection type. Show HTTP headers and IP address.Free Detecting presence of proxy server on any IP address PROTECT ONLINE PRIVACY

testen.

Anmerkung:

Natürlich ist die Verbindung über das Tor-Netzwerk langsamer als eine direkte Verbindung.

Das kann auch gar nicht anders sein, denn die Anfragen und Antworten der Server werden über MEHRERE Tor-Server (sog. "Onion Router) weitergeleitet (sog. "Proxy-Chain"), wobei ein Router immer nur die IP des VORGÄNGERS und des NACHFOLGERS kennt.
Darauf basiert das Prinzip von Tor. Da noch alle 10 Minuten die Chain gewechselt wird, hat man eine recht gute Anonymität mit dieser Methode.

Viel Erfolg!

Greetz,

RM

Nachtrag: Bei Fragen/Problemen einen neuen Thread im passenden Distributions-Unterforum in der Kategorie "Internetkonfiguration" eröffnen.
 
Status
Für weitere Antworten geschlossen.
Oben