Home » Bitcoin » Umbrel und RaspiBlitz Lightning Watchtower einrichten

Umbrel und RaspiBlitz Lightning Watchtower einrichten

In diesem Artikel geht darum wie Ihr auf Eurer Umbrel oder RaspiBlitz Fullnode einen Lightning Watchtower einrichten könnt. Das Lightning-Netzwerk stellt eine Second-Layer-Lösung für das Bitcoin-Protokoll dar, um Transaktionen schneller und kostengünstiger durchzuführen, als es auf der Haupt-Blockchain möglich ist. Ein zentrales Konzept des Lightning-Netzwerks sind die sogenannten "Watchtowers", die dazu beitragen, das Netzwerk sicher zu halten. Dieser Blog erläutert das Konzept, die technischen Grundlagen und den Nutzen des Lightning Watchtowers.

Was ist ein Watchtower

Ein Watchtower ist im Grunde genommen ein Netzwerkknoten, der dazu dient, das Lightning-Netzwerk zu überwachen und sicherzustellen, dass alle Teilnehmer ehrlich agieren. Da Transaktionen im Lightning-Netzwerk off-chain durchgeführt werden, besteht die Möglichkeit, dass eine der Parteien versucht, eine alte Transaktion zu veröffentlichen, um betrügerisch mehr Bitcoins zu erhalten, als sie sollte. Der Watchtower stellt sicher, dass dies nicht geschieht.

Technische Erklärung

  1. Zustandskanäle: Lightning-Netzwerktransaktionen verwenden "Zustandskanäle". Dies bedeutet, dass nur die Eröffnung und Schließung eines Kanals auf der Haupt-Blockchain veröffentlicht werden, während alle anderen Transaktionen off-chain und privat zwischen den beiden Parteien stattfinden.
  2. Betrugsszenario: Wenn eine Partei versucht, eine alte Transaktion zu veröffentlichen, um betrügerisch mehr Geld zu erhalten, wird dies als "Betrugsversuch" bezeichnet.
  3. Rolle des Watchtowers: Ein Watchtower speichert verschlüsselte Zustandsupdates von Kanälen. Er kennt jedoch den tatsächlichen Inhalt dieser Updates nicht und kann sie daher nicht entschlüsseln. Trotzdem kann er feststellen, wenn eine alte Transaktion auf der Blockchain veröffentlicht wird.
  4. Reaktion auf Betrug: Sobald der Watchtower einen Betrugsversuch erkennt, kann er eine Straftransaktion auslösen. Diese Straftransaktion stellt sicher, dass der betrügerische Teilnehmer seine gesamten im Kanal gehaltenen Mittel verliert. Das bedeutet, dass der Betrug nicht nur verhindert wird, sondern die betrügerische Partei auch finanziell bestraft wird.

Nutzen

  1. Sicherheit: Watchtowers erhöhen die Sicherheit im Lightning-Netzwerk, indem sie betrügerische Aktionen verhindern.
  2. Vertrauen: Mit Watchtowers können Nutzer des Lightning-Netzwerks sicher sein, dass ihre Transaktionen geschützt sind, auch wenn sie nicht ständig online sind.
  3. Skalierbarkeit: Da Watchtowers nur dann eingreifen, wenn ein Betrug erkannt wird, reduzieren sie die Notwendigkeit für alle Teilnehmer, ständig alle Transaktionen zu überwachen. Dies erleichtert die Skalierung des Netzwerks.
  4. Förderung der Ehrlichkeit: Die Existenz von Watchtowers stellt eine Abschreckung für potenzielle Betrüger dar, da das Risiko, alle Mittel zu verlieren, hoch ist.

Vorausetzungen auf der Umbrel Node

Die Umbrel Node sollte auf dem aktuellsten Stand sein und die Lightning Wallet eingerichtet sein. Es benötigt keine Portweiterleitungen da der Watchtower über das Tor Netzwerk agiert. Es müssen natürlich Kanäle vorhanden sein die der Watchtower überwachen kann, ansonsten nützt das Tool nicht viel.

Einrichtung des Watchtowers auf der Umbrel Node

Öffnet Eure Lightning Node und klickt oben rechts auf die 3 Punkte und öffnet die Advanced Settings. Navigiert zum Eintrag Watchtower und öffnet die Einstellungen in dem Ihr darauf klickt.

Aktiviert den Watchtower Service. Im Unteren Feld findet Ihr die Adresse Eures Watchtowers. Dies ist die Serveradresse falls Ihr auf die Lightning Node aufpassen möchtet. Bitte stellt sicher dass Eure Lightning Node auch immer verfügbar ist, und eine aussreichen hohe Onlinezeit hat damit Ihr Euren Job als Aufpasser auch wahrnehmen könnt.

Weiter unten finden wir den Watchtower Client. Diese funktioniert ermöglich uns, dass wir jemandens Node hinzufügen können, damit diese wie oben beschrieben auf unsere Node aufpasst, sollte diese mal Offline gehen. Damit wird verhindert dass ein Betrüger einen alten Chainstate veröffentlich und Eure Node dagegen nicht Einspruch erheben kann da diese Offline ist.

Wir fügen in das Feld die URI unser gewünschten Partners ein der auf uns aufpassen soll. Bitte stellt sicher dass Ihr wenn möglich die Node von jemanden nehmt, den Ihr kennt und vertraut. Die Auswahl im Internet ist nicht so gross, und nehmt bitte nicht irgendeinen Watchtower den Ihr auf einer dubiosen Seite ausgegraben habt. Gerne dürft Ihr hier den Watchtower von uns eintragen. Die Adresse wäre:

0214365a2cf18a3f84c421c648d03bedb021ff74afb95cc7ea0cbbf23b976d1033@yreb4gbnfi5ewbibvpxm2sjdndcsicvwlua2ncjlad2f6h7vgf7eehid.onion:9911

Fügt die Adresse hinzu und klickt auf ADD. Danach könnt Ihr herunterscrollen und auf Save and Restart Node klicken.

Der Watchtower ist bereits eingerichtet und die von Euch eingetragene Node passt nun auf Eure Kanäle auf

Raspiblitz Watchtower Server und Client einrichten

Die Einrichtung auf dem Blitz ist nicht ganz so einfach wie auf der Umbrel Node, aber trotzdem machbar. Stellt zuerst sicher dass Ihr auf der neusten Version 1.9.0 seid und ebenfalls die neusten Lightning Version 16.4-beta installiert ist.

gebt menu ein und stellt sicher dass die Node auf dem aktuellsten Stand ist:

Loggt Euch per SSH auf Eurem Blitz ein:

ssh admin@interneIP

Watchtower Tor Konfiguration

Wir möchten dass der Watchtower über Tor kommunziert genau wie bei der Umbrel Node. Dazu müssen wir die Ports für den Watchtower in die Tor Konfiguration des Systems eingeben. Öffnet die Datei torrc mit

nano /etc/tor/torrc

Fügt am Ende der Datei die folgenden Zeilen hinzu:

# Hidden Service for incoming LND WatchTower connections
HiddenServiceDir /mnt/hdd/tor/lndWT9911
HiddenServicePort 9911 127.0.0.1:9911

LND Konfiguration anpassen

Öffnet die LND Konfiguration mit

sudo nano /mnt/hdd/lnd/lnd.conf

und fügt den folgenden Inhalt am Ende der Datei ein:

[Watchtower]
watchtower.active=1

[Wtclient]
wtclient.active=1

startet kurz den LND Service neu mit

sudo systemctl restart lnd.service

Watchtower hinzufügen

stellt sicher dass Ihr nicht als Sudo user eingeloggt sein. die Befehle für Lightning Node müssen als admin ausgeführt werden. Mit wtclient add können wir einen Watchtower nun hinzufügen. Das wäre also:

lncli wtclient add 0214365a2cf18a3f84c421c648d03bedb021ff74afb95cc7ea0cbbf23b976d1033@yreb4gbnfi5ewbibvpxm2sjdndcsicvwlua2ncjlad2f6h7vgf7eehid.onion:9911

Ihr könnt hier auch gerne die Adresse meiner Node verwenden. Startet die LND Node erneut neu mit:

sudo systemctl restart lnd.service

Mit dem Befehl lncli wtclient towers könnt Ihr überprüfen ob der Watchtower erfolgreich hinzugefügt worden ist:

Watchtower Infos

Der Watchtower der auf uns aufgpasst wurde erfolgreich hinzugefügt.

Debugging

Mit dem folgenden Befehl könnt Ihr schauen ob der Watchtower erfolgreich kontaktiert wird:

sudo tail -f -n 10000 /mnt/hdd/lnd/logs/bitcoin/mainnet/lnd.log | grep WTCL

Der Watchtower wird kontaktiert. Es gibt aber bei mir nichts zu syncen der der RaspiBlitz bei mir nur zu Testzwecken läuft.

Raspiblitz als Watchtower

Die Grundlegende Einrichtung ist bereits durchgeführt. Damit Ihr die Adresse der RaspiBlitz Node herausfinden könnt, könnt Ihr folgenden Befehle eingeben

sudo cat /mnt/hdd/tor/lndWT9911/hostname = hostname, also die Hostadresse der Node inklusive Port, &
lncli tower info = der pubkey der Node

Zusammen wäre das also die Adresse, die Ihr bei anderen Nodes als Watchtower hinzufügen könnt.

Debugging

Mit folgenden Befehl könnt Ihr schauen ob Euer Watchtower auf andere aufpasst:

sudo tail -f -n 10000 /mnt/hdd/lnd/logs/bitcoin/mainnet/lnd.log | grep WTWR

Weitere Befehle für den RaspiBlitz Watchtower

  • lncli wtclient -h - listet alle watchtower Client Befehle auf
    NAME:
    lncli wtclient
    - Grundbefehl
  • Anwendung:
    lncli wtclient Befehl
  • Befehle:
    add - neuen Watchtower hinzufügen
    remove - Watchtower entfernen
    towers - zeigt Informationen über alle registrierten Watchtower
    tower - zeigt informationen über einen bestimmten Watchtower
    stats - zeigt die aktuellen Informationen zu dem Watchtower an
    policy - zeigt die Regeln der aktiven Watchtower Verbindung an
  • OPTIONS:
    --help, -h (Hilfe Anzeigen)

Beispiel: mit

lncli wtclient remove 0214365a2cf18a3f84c421c648d03bedb021ff74afb95cc7ea0cbbf23b976d1033@yreb4gbnfi5ewbibvpxm2sjdndcsicvwlua2ncjlad2f6h7vgf7eehid.onion:9911

könnt Ihr den hinzugefügten Watchtower wieder entfernen

Liste Öffentliche Watchtower

Öffentliche Watchtower sind aktuell etwas schwer zu finden. Zudem stellt sich die Frage ob man irgend einer fremden Node vertrauen soll, schliesslich soll sie verhindern dass mit Euren Kanälen Unfug angestellt wird. Das ist kaum möglich wenn eine Node ständig offline ist oder irgendwann wieder vom Netz ist. Deswegen ist es auf jedenfall sinnvoll mehrere Watchtower in Eure Node einzutragen. Fällt ein Watchtower aus, verbindet sich die Node nach einiger Zeit mit einer weiteren, die Ihr angegeben habt.

Eine Liste öffentlicher Watchtower gibt es hier in einem GitHub-Thread . Ausserdem könnt Ihr im Blocktrainer Forum sicher auch Leute finden oder Ihr fragt in den Telegram Kanälen von Umbrel oder RaspiBlitz German.

Das wärs auch schon mit dem Artikel Umbrel und RaspiBlitz Lightning Watchtower einrichten. Ich hoffe Ihr konntet Euren Watchtower erfolgreich einrichten, habt Ihr Fragen, schreibt sie in die Kommentare!

Ähnliche Beiträge

Schreibe einen Kommentar

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