Lightning Watchtower

Hallo zusammen, wer hat bereits mit Raspiblitz erfolgreich einen Watchtower installiert?
Ich habs nach dieser Anleitung versucht:
https://btc21.de/lightning-watchtower/
und bekomme aber immer letzten Befehl: sudo lncli wtclient add xxxxxxxxx
die Fehlermeldung:

[lncli] could not load global options: unable to read macaroon path (check the network setting!): open /root/.lnd/data/chain/bitcoin/mainnet/admin.macaroon: no such file or directory

Das File gibt es bei mir allerdings mit seltsamen kryptischen Sonderzeichen … File korrupt?
Hat jemand Rat oder könnte mal sein admin.macaroon posten?

1 „Gefällt mir“

hab den Fehler gefunden:

lncli wtclient add xxxxxxxxx muss ohne „sudo“ ausgeführt werden.

1 „Gefällt mir“

Ich finde die Anleitung von BTC21 gut:

Habe es noch nicht ausprobiert!

2 „Gefällt mir“

Hat jemand einen Watchtower Dienst, an den man seine Node anbinden kann?

1 „Gefällt mir“

Carlos du alter Haudegen :grinning_face_with_smiling_eyes:

Meine Node muss sich ja weiter entwickeln.
Während der Bitcoin Zitadelle gab es ja gute Workshops zum Thema Lightning Nodes.
Habe gleich nach dem Event diese Optimierungen vorgenommen.
Das Thema Watchdog ist eines davon…

Hier sind ein paar öffentliche WTs:

1 „Gefällt mir“

Hallo, wollte auch den Watchtower aktivieren, habe alles nach der Anleitung ausgeführt, leider funktioniert es nicht, meine Node will sich mit keinem Watchtower verbinden, komme einfach nicht weiter, vielleicht jemand eine Idee:

2021-09-15 16:26:43.324 [DBG] WTCL: (legacy) Waiting for active session queues to finish draining, stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:26:43.324 [DBG] WTCL: (anchor) Stopping watchtower client
2021-09-15 16:26:43.324 [DBG] WTCL: (anchor) Stopping task pipeline
2021-09-15 16:26:43.325 [DBG] WTCL: (anchor) Revoked state pipeline flushed.
2021-09-15 16:26:43.325 [DBG] WTCL: (anchor) Task pipeline stopped successfully
2021-09-15 16:26:45.891 [DBG] WTCL: (anchor) Attempting session negotiation with tower=023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70
2021-09-15 16:26:53.324 [INF] WTCL: (anchor) Force quitting watchtower client
2021-09-15 16:26:53.325 [INF] WTCL: (anchor) Force quitting task pipeline
2021-09-15 16:26:53.325 [INF] WTCL: (anchor) Task pipeline unclean shutdown complete
2021-09-15 16:26:53.325 [DBG] WTCL: (anchor) Stopping session negotiator
2021-09-15 16:26:57.475 [DBG] WTCL: (anchor) Sending Init to 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911
2021-09-15 16:26:58.657 [DBG] WTCL: (anchor) Received Init from 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:99112021-09-15 16:26:58.657 [DBG] WTCL: (anchor) Sending MsgCreateSession(blob_type=[FlagAnchorChannel|FlagCommitOutputs|No-FlagReward], max_updates=1024 reward_base=0 reward_rate=0 sweep_fee_rate=2500) to 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911
2021-09-15 16:27:00.605 [DBG] WTCL: (anchor) Received MsgCreateSessionReply(code=0) from 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911
2021-09-15 16:27:00.612 [DBG] WTCL: (anchor) New session negotiated with 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911, policy: (blob-type=110 max-updates=1024 reward-rate=0 sweep-fee-rate=2500)
2021-09-15 16:27:00.612 [DBG] WTCL: (anchor) Request for session negotiation with tower=023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911 failed, trying again – reason: negotiator exiting
2021-09-15 16:27:00.612 [DBG] WTCL: (anchor) Session negotiation with tower=023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70 failed, trying again – reason: session negotiation unsuccessful
2021-09-15 16:27:00.612 [INF] WTCL: (anchor) Watchtower client unclean shutdown complete, stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:27:00.612 [DBG] WTCL: (anchor) Waiting for active session queues to finish draining, stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:27:21.930 [INF] WTCL: (anchor) Using private watchtower 023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70@duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911, offering policy (blob-type=110 max-updates=1024 reward-rate=0 sweep-fee-rate=2500)
2021-09-15 16:27:23.322 [INF] WTCL: (legacy) Starting watchtower client
2021-09-15 16:27:23.322 [DBG] WTCL: (legacy) Starting session negotiator
2021-09-15 16:27:23.322 [INF] WTCL: (legacy) Watchtower client started successfully
2021-09-15 16:27:23.322 [INF] WTCL: (anchor) Starting watchtower client
2021-09-15 16:27:23.322 [DBG] WTCL: (anchor) Starting session negotiator
2021-09-15 16:27:23.322 [INF] WTCL: (anchor) Watchtower client started successfully
2021-09-15 16:27:23.323 [INF] WTCL: (legacy) Requesting new session.
2021-09-15 16:27:23.323 [DBG] WTCL: (legacy) Dispatching session negotiation
2021-09-15 16:27:23.323 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 10s – reason: exhausted all tower candidates
2021-09-15 16:27:23.323 [DBG] WTCL: (anchor) Loaded next candidate session queue id=0236facad6d9c53bd98659d5b8ea049b0ed22aee9b5a1194c125f2008e9649916f
2021-09-15 16:27:33.323 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 20s – reason: exhausted all tower candidates
2021-09-15 16:27:53.324 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 40s – reason: exhausted all tower candidates
2021-09-15 16:28:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:28:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:28:33.324 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 1m20s – reason: exhausted all tower candidates
2021-09-15 16:29:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:29:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:29:53.324 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 2m40s – reason: exhausted all tower candidates
2021-09-15 16:30:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:30:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:31:21.928 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:31:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:32:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:32:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:32:33.324 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 5m0s – reason: exhausted all tower candidates
2021-09-15 16:33:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:33:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:34:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:34:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:35:21.928 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:35:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:36:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:36:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:37:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:37:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 16:37:33.324 [DBG] WTCL: (legacy) Unable to get new tower candidate, retrying after 5m0s – reason: exhausted all tower candidates

Wurden mehrere Watchtower versucht? Den vorherigen auch mal entfernt?

habe mittlerweile 4 Tower drin, wenn ich eine Adresse hinzufüge, dann funktioniert es erstmal, also session true, nach lnd restart dann aber nicht mehr, session auf false. Entfernen lassen sich die Tower nicht, mit lncli wtclient remove kommt wenn kein Tower verbunden, dass während einer Session kein Tower etfernt wwrden kann, wenn einTower verbunden dann kommt, dass der Tower nicht entfernt werden kann, ohne weitere Hinweise.

admin@raspberrypi:~ $ lncli wtclient stats
{
„num_backups“: 8,
„num_pending_backups“: 8,
„num_failed_backups“: 0,
„num_sessions_acquired“: 1,
„num_sessions_exhausted“: 0

admin@raspberrypi:~ $ lncli wtclient towers
{
„towers“: [
{
„pubkey“: „02b745aa2c27881f2494978fe76494137f86fef6754e5fd19313670a5bc639ea82“,
„addresses“: [
„xjyldrwmtxtutdqqhgvxvnykk4ophz6ygr3ci4gxnnt5wibl7k4g2vad.onion:9911“
],
„active_session_candidate“: false,
„num_sessions“: 0,
„sessions“: [
]
},
{
„pubkey“: „03fdd72f083bd0fed923544d2ae6545c48a30d3848b71645da8578423c080e8324“,
„addresses“: [
„7v6dtqwovab2rzbyx4g2ogln4cf2dczxclfh3fgtaf6kdde2b3fc4hyd.onion:9911“
],
„active_session_candidate“: false,
„num_sessions“: 0,
„sessions“: [
]
},
{
„pubkey“: „023c2f2f2869764ede1166991c07249774be1b77c68184cc858b009ba072cbcc70“,
„addresses“: [
„duhm2urtjlpxm6tsu5qt3ddre2jqi7tumh6lbkspbuv3we4mxv7iemqd.onion:9911“
],
„active_session_candidate“: false,
„num_sessions“: 1,
„sessions“: [
]
},
{
„pubkey“: „025d21fc580d854052e7087670ac85283dd10db7b273fc697827520a34360279db“,
„addresses“: [
„looplnk2vszfniwkiqi66pq5tpkuslzobpo3x6jkpgjzm4jbq7i6f5qd.onion:9911“
],
„active_session_candidate“: true,
„num_sessions“: 1,
„sessions“: [
]
}
]

admin@raspberrypi:~ $ sudo su
root@raspberrypi:/home/admin# tail -f -n 10000 /mnt/hdd/lnd/logs/bitcoin/mainnet/lnd.log | grep WTCL
2021-09-15 18:58:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 18:58:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 18:59:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 18:59:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:00:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:00:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:01:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:01:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:02:21.928 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:02:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:03:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:03:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:04:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:04:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:05:21.928 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:05:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:06:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:06:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:07:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:07:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:08:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:08:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:09:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:09:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:10:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:10:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:11:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:11:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:12:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:12:21.930 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2021-09-15 19:13:21.927 [INF] WTCL: (legacy) Client stats: tasks(received=8 accepted=8 ineligible=0) sessions(acquired=1 exhausted=0)
2021-09-15 19:13:21.930 [INF] WTCL

Habe jetzt lnd neu gestartet, jetzt zeigt er bei towers :

„pubkey“: „025d21fc580d854052e7087670ac85283dd10db7b273fc697827520a34360279db“,
„addresses“: [
„looplnk2vszfniwkiqi66pq5tpkuslzobpo3x6jkpgjzm4jbq7i6f5qd.onion:9911“
],
„active_session_candidate“: true,
„num_sessions“: 1,
„sessions“: [

bei den anderen 3 Towers weiterhin false, also scheint er sich jetzt doch verbunden zu haben, vielleicht hat es geholfen, dass ich nicht gleich restartet habe?
Der Befehl mit dem weitere Towerdaten ausgegeben werden sollen funktioniert aber trotzdem nicht:

admin@raspberrypi:~ $ lncli wtclient tower 025d21fc580d854052e7087670ac85283dd10db7b273fc697827520a34360279db@looplnk2vszfniwkiqi66pq5tpkuslzobpo3x6jkpgjzm4jbq7i6f5qd.onion:9911
[lncli] invalid public key: encoding/hex: invalid byte: U+0040 ‚@‘

Das ist auch richtig so. Es passt immer nur ein Tower auf deine Node auf. Nach jedem Neustart des LN Clients wird ein Tower ausgemittelt.

Wer mich als seinen Watchtower hinzufügen möchte kann dies gerne tun. Mein Node läuft 24/7 und passt bereits fleißig auf einige Channels auf.

03fdd72f083bd0fed923544d2ae6545c48a30d3848b71645da8578423c080e8324@mcnfok66tvflgotjmkfsalktkls3m3nmbir5arrmdpn4euh4wu5yfxyd.onion:9911

1 „Gefällt mir“

JA, mein Service läuft bereits seit einer ganzen weile und passt erfolgreich auf einige Channels auf. Du kannst mich gerne hinzufügen wenn du magst:

03fdd72f083bd0fed923544d2ae6545c48a30d3848b71645da8578423c080e8324@mcnfok66tvflgotjmkfsalktkls3m3nmbir5arrmdpn4euh4wu5yfxyd.onion:9911

1 „Gefällt mir“

Habe leider Probleme beim hinzufügen von Watchtowers.
„root@raspberrypi:/home/admin# sudo lncli wtclient add 02b745aa2c27881f2494978fe76494137f86fef6754e5fd19313670a5bc639ea82@xjyldrwmtxtutdqqhgvxvnykk4ophz6ygr3ci4gxnnt5wibl7k4g2vad.onion:9911
[lncli] could not load global options: could not load TLS cert file: open /root/.lnd/tls.cert: no such file or directory
root@raspberrypi:/home/admin# lncli wtclient add 02b745aa2c27881f2494978fe76494137f86fef6754e5fd19313670a5bc639ea82@xjyldrwmtxtutdqqhgvxvnykk4ophz6ygr3ci4gxnnt5wibl7k4g2vad.onion:9911
[lncli] could not load global options: could not load TLS cert file: open /root/.lnd/tls.cert: no such file or directory“
Weshalb kann der TLS cert file nicht geladen werden und wo finde ich den?
Hoffe es kann jemand weiterhelfen!

@ElBlocko:
Dein Fehler ist, dass du mit dem root Account den Befehl ausgeführt hast. Die Lightnting Node (lnd) läuft unter dem User admin. Führe bitte den Befehl mit dessen Kennung aus.

1 „Gefällt mir“