Home » Bitcoin » Tor Dienste mit IP2Tor auf dem Raspiblitz via Clearnet ansprechen

Tor Dienste mit IP2Tor auf dem Raspiblitz via Clearnet ansprechen

In diesem Tutorial erfahrt ihr, wie ihr die öffentliche IP-Adresse eines Virtual Private Servers (VPS) nutzt, um Tor Hidden Services Dienste auf dem Raspiblitz via IP2Tor über das Clearnet ansprechen könnt. Dies ermöglicht es euch, Dienste, die normalerweise nur über das Tor-Netzwerk erreichbar sind, auch über eine herkömmliche IP-Adresse zu erreichen. In weiteren Artikeln schauen wir uns dann an, wie wir für zum Beispiel für den BTCPay Server auf dem Raspiblitz eine Domain mit SSL Zertifikat einrichten können.

Was richten wir hier genau ein

Wir richten einen sogenannten Tor-to-IP-Tunnel-Dienst ein. Dabei wird der Datenverkehr von einem Tor Hidden Service über einen VPS geleitet, sodass er über eine normale IP-Adresse oder Domain zugänglich ist. Der VPS fungiert hierbei als Brücke zwischen dem Tor-Netzwerk und dem öffentlichen Internet.

Wie es funktioniert

  1. Tor Hidden Service: Ein Dienst, der nur über das Tor-Netzwerk erreichbar ist, wird auf deinem lokalen Rechner betrieben.
  2. VPS: Ein Virtual Private Server, der als öffentlich zugänglicher Einstiegspunkt dient.
  3. socat: Ein Tool, das den Datenverkehr zwischen dem VPS und dem Tor Hidden Service weiterleitet.

Vorteile

  • Verbirgt die IP-Adresse des Hosts vor der Öffentlichkeit und dem VPS.
  • Kein Port-Forwarding im lokalen Netzwerk (LAN) des Hosts erforderlich.
  • Zusätzliche Verschlüsselung durch Tor zwischen dem Host und dem VPS.

Nachteile

  • Die Lösung ist elegant, um die eigenen Dienste via Clearnet zu erreichen, die Verbindung danach erfolgt aber weiterhin über Tor, ist also nicht so schnell wie zum Beispiel die VPN Lösung Tunnelsats.

Voraussetzungen

  • SSH-Zugang zu einem Virtual Private Server (VPS) - Zum Beispiel ein minimales Paket bei IONOS oder Hetzner für für ca. 2-4 Euro pro Monat.
  • Ein Rapsiblitz der voll synchronisiert ist. Die Dienste müssen eingerichtet sein, und funktionieren.
  • Portfreigabe auf dem VPS Server: Der entsprechene Port muss in der Firewall des VPS Servers freigegeben sein!

Schritt-für-Schritt Anleitung

Einrichtung von Tor und Socat auf dem VPS Server

Meldet euch mit SSH als root-Benutzer an:

ssh root@VPS_IP_ADDRESSE

Bringt eures System auf den neusten Stand mit:

apt update && apt upgrade -y && apt autoremove -y && apt autoclean -y

Installiert socat:

apt install socat

Installiert danach Tor:

$ apt install apt-transport-https

$ sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org $(lsb_release -sc) main" >> /etc/apt/sources.list.d/tor-project.list'

$ apt update

$ apt install tor

Ubuntu 24.04 und Tor

Auf Ubuntu 24.04 gibt es bis jetzt kein Tor Release Package. Die neuste Version kann deshalb noch nicht verwendet werden. Entfernt das Repo bei Fehlern mit rm /etc/apt/sources.list.d/tor-project.list und installiert tor nochmals mit apt install tor

Einrichtung eines systemd-Dienstes

Erstellt einen separaten Prozess für jeden verbundenen Hidden Service, um zu vermeiden, dass jede Verbindung neu gestartet werden muss, wenn ein Dienst hinzugefügt oder entfernt wird. Vorteilhaft wäre es, den verwendeten Port und den Dienstnamen im Namen des Dienstes anzugeben, z.B. tor2ip<VPS_PORT>_<lnd>.

Erstellt die Dienstdatei

nano /etc/systemd/system/tor2ip9236_lnd.service

Fügt den folgenden Inhalt ein und passt die Variablen an:

  • VPS_PORT: Der Port, der öffentlich zugänglich sein soll (in diesem Beispiel: 9236).
  • TOR_HIDDEN_SERVICE_ADDRESS.onion: Die Adresse des Hidden Services.
    • Die Adresse erhaltet ihr auf dem Raspiblitz für Lightning zum Beispiel mit:
      lncli getinfo
  • TOR_PORT: Der Port, den der Hidden Service verwendet (in diesem Beispiel für LND: 9735).
[Unit]
Description=Tor2IP Tunnel Service
After=network.target

[Service]
User=root
Group=root
ExecStart=/usr/bin/socat TCP4-LISTEN:9236,bind=0.0.0.0,fork SOCKS4A:localhost:TOR_HIDDEN_SERVICE_ADDRESSE.onion:9735,socksport=9050
StandardOutput=journal

[Install]
WantedBy=multi-user.target

TOR_HIDDEN_SERVICE_ADRESS ist dabei die Adresse vom Raspiblitz die ihr mit lncli getinfo auf dem Raspiblitz erhalten habt:

Die Tor Adresse ist der Teil nach dem @!

Dienst aktivieren und starten

systemctl enable tor2ip9236_lnd
systemctl start tor2ip9236_lnd

Überprüfung und Überwachung

Überprüft, ob der Tunnel aktiv ist mit:

netstat -tulpn

Achtet auf die Zeile:

tcp        0      0 0.0.0.0:9236            0.0.0.0:*               LISTEN      13684/socat  

Dienst überwachen

   systemctl status tor2ip9236

Beispielausgabe:

   ● tor2ip9236_lnd.service - Tor2IP Tunnel Service
      Loaded: loaded (/etc/systemd/system/tor2ip9236.service; enabled; vendor preset: enabled)
      Active: active (running) since Sun 2024-06-20 14:58:43 BST; 2min 23s ago
    Main PID: 13684 (socat)
       Tasks: 1 (limit: 1078)
      Memory: 540.0K
      CGroup: /system.slice/tor2ip9236.service
              └─13684 /usr/bin/socat TCP4-LISTEN:9236,bind=0.0.0.0,fork SOCKS4A:localhost:TOR_HIDDEN_SERVICE_ADDRESS.onion:9735,socksport=9050

   Jun 20 14:58:43 VPS_hostname systemd[1]: Started Tor2IP Tunnel Service.

Port freigeben auf dem VPS Server

In den Server Einstellungen bei eurem VPS Provider muss der Port 9236 wie in diesem Beispiel freigegeben werden. Bei Ionos findet ihr die Einstellungen unter Netzwerk -> Firewall Richtlinien:

Abschluss

Herzlichen Glückwunsch! Ihr habt erfolgreich einen Tor-to-IP-Tunnel-Dienst eingerichtet. Ihr könnt nun weitere Dienste hinzufügen, indem ihr unterschiedliche Ports auf dem VPS verwendet. Um auf die Ports/Dienste des Host-Computers zuzugreifen, verwendet dazu einfach die VPS_IP_ADRESSE:VPS_PORT.

Beispiel für die Verbindung zu LND. Eure Peers können sich nun mit der IP Adresse eures VPS und dem entsprechenden Port mit euch verbinden:

lncli connect NODE_PUBLIC_KEY@VPS_IP_ADRESSE:9236

Mit dieser Konfiguration im Artikel "Tor Dienste mit IP2Tor auf dem Raspiblitz via Clearnet ansprechen" habt ihr eine sichere und anonyme Möglichkeit geschaffen, Tor Hidden Services im Clearnet zugänglich zu machen. Achte darauf, die Sicherheit deiner Dienste stets im Auge zu behalten und die Regeln deines VPS-Anbieters zu beachten.

Resourcen:

https://github.com/openoms/bitcoin-tutorials/blob/master/tor2ip_tunnel.md

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert