Bereits seit einiger Zeit betreibe ich, auf einem VPS (Virtual Privat Server), ein Tor Relay um das Anonymisierungs-Netzwerk zu unterstützen. Das Basissystem dafür ist die Linux-Distribution NixOS.
Motiviert durch den Vortrag "Tor-Nodes einfach betreiben, jetzt" bei den CLT 2025 entstand der Wunsch, weitere Relays aufzusetzen. Dafür wollte ich ausloten, wie dies kostengünstig möglich ist.
Die günstigsten Linux-VPS Angebot gibt es bereits für 1 €/Monat. Dafür erhält man 1 vCore, 1 GB RAM und 10 GB Storage. Die Auswahl des Betriebssystems ist dabei eingeschränkt auf AlmaLinux, Debian, Rocky Linux und Ubuntu.
Ich entschied mich zunächst für Rocky Linux 9, musste aber feststellen, dass ein fehlerfreier Betrieb nicht möglich war. Bereits bei der Nachinstallation von Paketen gab es Probleme. Ich kontaktierte den Support-Chat des Anbieters und dieser bestätigte, dass meine gewählte Kombination wohl nicht sinnvoll zu betreiben ist. Offen bleibt dabei, warum es dieses Angebot überhaupt gibt.
Sofort aufgeben war aber keine Lösung und so wechselte ich auf das Debian 12 Image, welches etwas geringere Hardwareanforderungen hat.
Auf einem neuen VPS sollte man als Erstes den SSH-Zugang absichern. Hier prasseln sofort Log-in-Versuche aus aller Welt ein. Dafür verwende ich gern "fail2ban". Dies ist schnell über apt install fail2ban
installiert und mit
systemctl start fail2ban
gestartet. In meinem Fall kam zwar keine Fehlermeldung, aber ein "systemctl start fail2ban" zeigte an, dass der Dienst nicht läuft. Die Lösung war, in der Datei /etc/fail2ban/path-debian.conf die Option "sshd_backend = systemd" zu ergänzen.
Danach kann die eigentliche Installation von Tor erfolgen. Das Tor-Projekt bietet eigene Repositories für diverse Distributionen, darunter auch Debian, an. Diese zu nutzen, ist sehr sinnvoll, da dort aktuellere Versionen angeboten werden als in Debian selbst. Im Fall von Debian 12 ist aktuell Tor 0.4.8.16 verfügbar. Das Vorgehen ist unter anderem hier beschrieben. In der Datei /etc/tor/torrc erfolgt dann die eigentliche Konfiguration. Ich habe dort lediglich die Parameter ORPort, Nickname und ExitPolicy verwendet. Wer mehrere Tor-Server betreibt, sollte dies über den "Family Members" Eintrag kenntlich machen.
Die CPU-Auslastung und der freie RAM operieren bei dieser Hardware-Ausstattung zwar nahe am Limit, bisher läuft das System aber stabil. Nachvollziehen lässt sich die Auslastung natürlich auf verschiedenen Wegen. Ich nutze dafür gern btop.
Die nutzbare Bandbreite habe ich bewusst nicht beschränkt, um zu ermitteln, was mit diesem VPS möglich ist. Live-Daten dazu sieht man ebenfalls schön mit btop. Die Metrics Seite zeigt an, welche Geschwindigkeit automatisch ermittelt wurde. Nach ca. 3 Wochen Laufzeit stehen bei mir 26,16 MiB/s, was ich für den Preis absolut in Ordnung finde. Über Up- und Downstream wurden bisher jeweils ca. 8 TB übertragen.
Zum Schluss noch 3 Dinge, die man tun kann/sollte:
- ssh Anmeldung nur noch per Zertifikat
- IPv6 aktivieren
- noch mehr Tor-Relays aufsetzen ;-)
Quellen:
https://de.wikipedia.org/wiki/Tor_(Netzwerk)
https://de.wikipedia.org/wiki/NixOS
https://media.ccc.de/v/clt25-135-tor-nodes-einfach-betreiben-jetzt
https://support.torproject.org/de/apt/
https://support.torproject.org/apt/tor-deb-repo/
https://github.com/aristocratos/btop
https://metrics.torproject.org/rs.html#search
Einige VPS Anbieter untersagen das betreiben eines Tor Relays/Exit Nodes.
https://community.torproject.org/relay/community-resources/good-bad-isps/#germany
Vielen Dank, dass du ein Tor-Relay betreibst! Auch dass du beschreibst, wie man fail2ban unter Debian 12 in Gang bekommt, finde ich verdienstvoll. In anderen Debian-Releases lief das direkt nach dem Installieren. Warum Debian das so kaputt ausliefert und nicht korrigiert, ist mir ein Rätsel.
Aber hattest du am Anfang des Artikels nicht NixOS erwähnt? Warum?
Weiter unten erwähnst du, dass du die ExitPolicy angepasst hast. Aber wie? Ich hoffe, dass niemand deinen Artikel liest und versehentlich einen Tor-Exit konfiguriert. Das sollten nur Organisationen tun, weil es immer wieder vorkommt, dass Polizist:innen und Staatsanwält:innen nicht verstehen, was ein Proxy oder ein Tor-Relay ist und deswegen Hausdurchsuchungen bei den Personen anordnen, deren IP-Adresse sie in einem Log gefunden haben. Auch wenn das die eines Tor-Exits war. Privatleute können gefahrlos Non-Exit-Tor-Relays oder Tor-Bridges betreiben und so dem Tor-Netz helfen.
Ein letzter Punkt: Wenn man einen Server im Internet betreibt, ist es sehr leichtsinnig, SSH mit Password-Anmeldung laufen zu lassen. Das muss man wirklich auf Keys umstellen (was du Zertifikate nennst).
Hallo Torsten, es ist großartig, dass du zum Betrieb von Tor-Relays aufrufst. Middle Relays sind ein zentraler Bestandteil des Tor-Netzwerks, und jede Person kann sie relativ einfach betreiben.
Da sich dein Artikel auch an Laien oder Anfänger:innen richtet, ist es wichtig, deutlich darauf hinzuweisen, dass unbedingt vermieden werden muss, das Relay als Exit Relay zu konfigurieren. Der Betrieb eines reinen Middle Relays ist risikofrei und auch für Einsteiger:innen gut machbar. Exit Relays sollten in den meisten Ländern besser von juristischen Personen betrieben werden – zum Beispiel von Vereinen oder spezialisierten Firmen (so wie wir es als Artikel 5 e.V. tun). Exits sollten zudem strikt von anderer oder privater IT-Infrastruktur getrennt betrieben werden.
Mit entsprechend schnellem Internetanschluss und einer stabilen Verbindung (also möglichst ohne häufige IP-Wechsel) können Middle Relays auch problemlos von zuhause aus betrieben werden – etwa mit einem RaspberryPi 3 oder neuer bzw. vergleichbarer Hardware.
Was ebenfalls sehr sinnvoll ist: der Betrieb einer Bridge (also eines reinen Eingangsknotens). Dafür wird zwar eine feste IP-Adresse benötigt, diese wird jedoch nicht öffentlich gelistet (im Gegensatz zur IP eines Middle oder Exit Relays). Solche Bridges lassen sich aus meiner Sicht auch gut auf einem privaten Webserver betreiben. Sie helfen vor allem Tor-Nutzer:innen, die von Zensur betroffen sind – denn die IP-Adressen werden nur indirekt weitergegeben, was die Sperrung durch Staaten oder Infrastrukturbetreiber deutlich erschwert.
Falls hierzu noch Fragen auftauchen, könnt ihr mich gern per E-Mail kontaktieren. Auf https://artikel5ev.de findet ihr ganz oben rechts einen kleinen Briefumschlag – da geht’s zur Mailadresse.
Danke für die Ergänzung. Inzwischen liegt die "Advertised Bandwith" bei 33,26 MiB/s und es wurden 17,4 TiB pro Richtung übertragen.