Zum Inhalt

Tor Onion Dienst

Einleitung

Tor ist ein Anonymisierungsdienst und eine Software, die den Datenverkehr über drei von Freiwilligen betriebene Server, sogenannte Relays, leitet. Das Three-Hop-Design soll die Privatsphäre gewährleisten, indem es Überwachungsversuchen widersteht.

Eine Besonderheit von Tor ist, dass man versteckte, Tor-exklusive Websites betreiben kann, die als Onion-Dienste bezeichnet werden. Der gesamte Datenverkehr zu einem Onion-Dienst ist daher privat und verschlüsselt.

Voraussetzungen

Folgende Mindestvoraussetzungen gelten für die Anwendung dieses Verfahrens:

  • Die Möglichkeit, Befehle als Root-Benutzer auszuführen oder mit sudo die Berechtigungen zu erhöhen
  • Erfahrung im Umgang mit einem Kommandozeilen-Editor. Der Autor verwendet hier vi oder vim, Sie können aber Ihren bevorzugten Editor verwenden
  • Ein Webserver, der auf localhost oder einem anderen TCP/IP-Port läuft

Tor-Installation

Zur Installation von Tor müssen Sie zuerst EPEL (Extra Packages for Enterprise Linux) installieren und Updates ausführen:

dnf -y install epel-release && dnf -y update

Dann Tor installieren:

dnf -y install tor

Tor-Konfiguration

Nach der Installation der Pakete müssen Sie Tor konfigurieren. Der Autor verwendet dafür vim, aber wenn Sie nano oder etwas anderes bevorzugen, können Sie das gerne entsprechend anpassen:

vi /etc/tor/torrc

Die standardmäßige torrc-Datei ist recht aussagekräftig, kann aber sehr lang werden, wenn man nur einen Onion-Dienst benötigt. Eine minimale Onion-Service-Konfiguration sieht in etwa so aus:

HiddenServiceDir /var/lib/tor/onion-site/
HiddenServicePort 80 127.0.0.1:80

Genauere Betrachtung

  • Das Verzeichnis HiddenServiceDir enthält den Hostnamen und die kryptografischen Schlüssel Ihres Onion-Dienstes. Sie speichern diese Schlüssel unter /var/lib/tor/onion-site/
  • Der HiddenServicePort ist die Portweiterleitung von Ihrem lokalen Server zum Onion-Dienst. Sie leiten 127.0.0.1:80 an Port 80 unseres Tor-basierten Dienstes weiter

Warnhinweis

Wenn Sie ein Verzeichnis außerhalb von `/var/lib/tor/` für Ihre Onion-Service-Signaturschlüssel verwenden möchten, müssen Sie sicherstellen, dass die Berechtigungen `0700` lauten und der Eigentümer `toranon:toranon` ist.

Web-Server — Konfiguration

Sie benötigen außerdem einen Webserver auf Ihrem Rechner, um Clients für Ihren Onion-Dienst zu bedienen. Jeder Webserver (Caddy, Apache oder Nginx) ist verwendbar. Der Autor bevorzugt Caddy. Der Einfachheit halber installieren wir Caddy:

dnf -y install caddy

Als Nächstes fügen Sie Folgendes in die Datei /etc/caddy/Caddyfile ein:

http:// {
    root * /usr/share/caddy
    file_server
}

Testen und Hochfahren

Sobald Sie Ihre Tor-Relay-Konfiguration eingerichtet haben, besteht der nächste Schritt darin, die Tor- und Caddy-Daemons zu aktivieren:

systemctl enable --now tor caddy

Den Hostnamen Ihres Onion-Dienstes erhalten Sie mit diesem Befehl:

cat /var/lib/tor/onion-site/hostname

Innerhalb weniger Minuten wird Ihr Onion-Dienst über das Tor-Netzwerk verbreitet und Sie können Ihren neuen Onion-Dienst im Tor-Browser anzeigen:

Tor Browser showing our Onion Service

Zusammenfassung

Onion-Dienste sind ein unschätzbares Werkzeug, wenn Sie eine Website privat hosten oder die Carrier-Grade-NAT-Sperre Ihres Internetanbieters ausschließlich mit Open-Source-Software umgehen müssen.

Auch wenn Onion-Dienste nicht so schnell sind wie das direkte Hosten einer Website (was aufgrund des datenschutzorientierten Designs von Tor verständlich ist), sind sie wesentlich sicherer und privater als das öffentliche Internet.

Author: Neel Chauhan

Contributors: Ganna Zhrynova