Es ist verblüffend einfach, einen Hidden Service mit Tor aufzusetzen. Ich beschreibe hier das Vorgehen, das weniger als fünf Minuten Lebenszeit in Anspruch nimmt, für Linux. Für alle Aktionen an der Kommandozeile setze ich root
-Rechte voraus.
Schritt 1: Einen Webserver besorgen und installieren.
Ob es sich um apache handelt, der inzwischen ziemlich »moppelig« geworden ist, oder um nginx, ist dabei eine Geschmacksfrage. Für einfache Aufgaben ist nginx wesentlich einfacher zu konfigurieren und außerdem deutlich performanter, während apache doch eine Menge Lesen verlangt. Und nein, das bedeutet nicht, dass man mit nginx nichts »komplexeres« machen kann…
Wer ein debianoides Linux (Debian, Ubuntu, Raspbian, Mint, Trisquel und viele mehr) verwendet, tippt einfach als Admin in der Konsole…
# apt-get install apache2
…oder…
# apt-get install nginx
…und hat hinterher einen laufenden Webserver, der beim Systemstart automatisch gestartet wird. Über die Konfiguration kann ich mich hier nicht in der gebotenen Ausführlichkeit auslassen, aber dafür gibt es im Web jede Menge Dokumentation.
Andere Distributionen mit rpm-Paketmanagement (insbesondere RedHat, Fedora oder SuSE) gehen natürlich anders vor, und wer Slackware benutzt, hat hoffentlich schon gelernt, wie man sich in einer Distribution ohne Paketmanagement behilft (es ist auch nicht so schwierig). Freunde von Arch Linux und Gentoo wissen sich sowieso zu helfen. 😉
Schritt 2: Die eigene IP-Adresse herausbekommen
# ifconfig | grep inet | grep -v '127.0.0.1' inet addr:192.168.13.199 Bcast:192.168.13.255 Mask:255.255.255.0 # _
Diese IP-Adresse wird später, in Schritt 4, für die Konfiguration von Tor benötigt.
Schritt 3: Tor besorgen und installieren
Hier wieder der Teil für die debianoiden Linuxe:
# apt-get install tor
Das wars.
Schritt 4: Hidden Service in Tor konfigurieren
Hierfür muss die Konfigurationsdatei torrc
im Editor bearbeitet werden – und tatsächlich sind nur zwei Zeilen einzufügen, die folgendermaßen aussehen (die IP-Adresse muss natürlich durch die richtige aus Schritt 2 ersetzt werden):
HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 80 192.168.13.199:80
Unter unixoiden Betriebssystem, die sich an den Dateisystemstandard halten, liegt diese Datei im Verzeichnis /etc/tor
, für andere Betriebssysteme kann ich nichts sagen.
Nachdem die beiden Zeilen eingefügt wurden, steht noch die kleine Arbeit an, das Verzeichnis hidden_service
an der konfigurierten Stelle anzulegen und die Rechte entsprechend zu setzen – dabei wird der im Folgenden verwendete technische User, unter dem der Tor-Dienst läuft, in nicht-debianoiden Distributionen aus naheliegenden Fiesheitsgründen völlig anders heißen.
Es ist aber nicht so viel Arbeit.
# cd /var/lib/tor # mkdir hidden_service # chown debian-tor:debian-tor hidden_service # chmod 0700 hidden_service # _
Nun gilt es nur noch zwei Dinge zu tun: Als erstes wird der Tor-Dienst neu gestartet, damit er die neue Konfiguration verwendet.
Wenn es sich um ein Linux mit systemd
handelt, geht das so:
# systemctl restart tor # _
Und wenn es sich um ein Linux mit sysvinit
handelt, geht es so:
# /etc/init.d/tor restart # _
Danach sollten im Verzeichnis hidden_service
zwei Dateien liegen:
# ls -l -rw------- 1 debian-tor debian-tor 23 Jan 29 22:10 hostname -rw------- 1 debian-tor debian-tor 887 Jan 29 21:42 private_key # _
In der Datei hostname
steht der Onion-Domainname, unter dem der Hidden Service erreichbar ist – der wird natürlich anders sein als hier:
# cat hostname z6bacnlvodyije26.onion
Wenn das nicht geklappt hat, noch einmal die Bearbeitung der torrc
überprüfen und auch einen Blick auf die Rechte des Verzeichnisses hidden_service
werfen.
Schritt 5: Hidden Service testen
Hierfür muss der Browser für die Benutzung von Tor konfiguiert werden. Beim Firefox ist hierzu in den Einstellungen der Punkt »Erweitert« auszuwählen, dort der Unterpunkt »Netzwerk«, wo dann unter »Verbindung« auf »Einstellungen« zu klicken ist. (Ja, ich weiß, im Gegensatz zu den einfachen Dingen an der Kommandozeile hirnt das alles ein bisschen…) Es ist »Manuelle Proxy-Konfiguration« auszuwählen und unter SOCKS-Host 127.0.0.1
, Port 9050
einzutragen. Darunter ist SOCKS v5
zu aktivieren. Das Firefox-Projekt hat sich nicht gerade Mühe gegeben, diese Einstellungen leicht auffindbar oder leicht bedienbar zu machen. Für andere Browser kann ich keine Aussagen machen, aber das Internet ist voller Dokumentation.
Nach abschließendem Klick auf »OK« kann man hier schnell überprüfen, ob der Browser Tor verwendet. Dies sollte immer der Fall sein.
Ich empfehle übrigens, sich gut zu merken, wie man diese Einstellung wieder rückgängig macht – sonst bekommt man bei eventuellen Problemen nicht einmal mit seinem Webbrowser mehr eine Verbindung zum Internet. Die Einstellung »Kein Proxy verwenden« dürfte bei fast jedem richtig sein.
Aber warum hat der Proxy jetzt die IP-Adresse 127.0.0.1, also die Loopback-Adresse des Rechners, an dem man gerade arbeitet? Nun, es läuft ja ein in Schritt 2 installierter Tor-Dienst auf dem lokalen Rechner, den wir natürlich benutzen. Port 9050
ist der Standardport; um einen anderen Port zu verwenden, müsste man SocksPort
in der Datei torrc
verändern. Dies wird wohl niemals nötig sein.
Schritt 6: Endlich! Ein laufender Hidden Service!
So, und damit zum Spaß an der Sache: In die Adresszeile des Browsers den Rechnernamen aus der Datei hostname
eingeben – gut, dass es eine Zwischenablage gibt – und nach einer gewissen Wartezeit (es können beim ersten Aufruf schon zehn bis zwanzig Sekunden werden) erscheint die Startseite des in Schritt 1 lokal installierten Webservers. Diese kann unter dieser Adresse aus dem gesamten Internet heraus aufgerufen werden, und das recht anonym und schwierig überwachbar. Einzige Voraussetzung dafür ists, dass Tor benutzt wird. Die in diesem Webserver zur Verfügung gestellten Inhalte sind nicht öffentlich sichtbar, was ja auch die Bedeutung des Wortes Hidden Service ist – um jemanden Zugriff darauf zu geben, muss man ihm (oder ihr) also die Adresse zukommen lassen. Wenn es um empfindliche, private Dinge geht, aber besser nicht in einer unverschlüsselten E-Mail, die offen wie eine Postkarte durch das Internet befördert wird, denn sonst kann man sich die Mühe mit dem Hidden Service gleich sparen.
Wer so etwas ständig laufen lassen möchte, ist vermutlich gut mit einem Raspberry Pi beraten, der deutlich weniger Energie verbraucht als ein PC.
Ach ja: Wer ab jetzt nicht ständig mit Tor surfen möchte, sollte hinterher die Proxy-Einstellungen im Browser zurücksetzen. Und wer es vielleicht doch manchmal möchte, ist gut beraten, sich ein Browser-Addon für das schnelle Umschalten zwischen verschiedenen Proxy-Konfigurationen zu besorgen.
http://www.crypto-fuer-alle.de/
Weiter sagen! 😀
Sry
Ich sags ja: Mit nginx ist man oft besser bedient als mit dem moppeligen und eher schwierig konfigurierbaren Apache…
sudo a2dismod status
…damit die Apache Lösung zur Schließung der Lücke auch gleich hier steht.
»Administratoren müssen nur das Kommando sudo a2dismod status ausführen, um die Statusseite zu deaktivieren. «
(wobei der Artikel recht lustig ist…
… »GET /chat/?q=How+to+get+rid+of+2+body%27s+%3F+ HTTP/1.1″ ho-ho-ho)
ps: Danke für die schöne Anleitung!
… fürs i2p habe ich leider keine so schöne gefunden – vom Prinzip her dürfte es aber gleich sein. (die gewünschten Inhalte eben nur über nen i2p »Tunnel« zugänglich machen – und vom Rest des Internets abkapseln)
https://geti2p.net/ar/misc/i2ptunnel-services
Pingback: (#8442) Make sure you definitely go through this just before something awful may happen 16.01.2019 05:25:21 « Unser täglich Spam
Und wie richte ich dann meine Website ein,sprich aussehen, Thema usw????
Mit einem Texteditor… 😉
Durch den apache oder auch nginx ist der Server auch weiterhin über den port 80 erreichbar, dort wo sich dann nun das Projekt liegt, wie hier beschrieben…
Somit ist durch einen leichten abgleich bei google der Server mit desssen richtiger IP schnell ausfindig zu machen!
Also keine gut Idee!
Moin,
etwas anderes: benutze diverse hidden services.
Zwei mit Cpanel und MySql.
Wie richte ich Roundcube, Horde oder Squirrel Mail ein?
Bei de oder com Domains habe ich keine Probleme.
Bei Name.onion versagt meine Logik.
Pingback: BLANK ATM CARD « Unser täglich Spam
Pingback: S/M des tages | Schwerdtfegr (beta)