Wie man das Passwort bei Thunderhub setzen kann
Leider ist es nicht möglich, ein Passwort für Thunderhub durch das Webinterface von Umbrel zu vergeben. Es wird von Seiten Umbrel, ein Standard-Kennwort vergeben, dieses lautet: “moneyprintergobrrr”. Sollte also ein Angreifer die Adresse und den Port von Thunderhub erreichen können und das Standard-Passwort ist aktiv, können Kanäle geöffnet, geschlossen und Beträge verschoben werden. Es geht soweit, dass man im Grunde die Bitcoin Wallet plündern könnte. Ich gehe davon aus, dass Umbrel dies in Zukunft beheben wird. Solange das nicht der Fall ist, zeige ich dir wie du dir selber helfen kannst.
- Verbinde dich zu deiner neuen Umbrel Node. Dein Passwort ist das Kennwort was du für den Login im Web-Interface benutzt. Beim eingeben des Passworts musst du darauf achten, das Linux keine Sterne oder Punkte anzeigt wenn du Buchstaben eingibst. Die Eingaben kommen aber trotzdem an.
Linux:
ssh umbrel@<internal ip/external ip/tor-name>
So sieht Umbrel auf der Kommandozeile aus.
umbrel@umbrel:~ $ ls
umbrel
umbrel@umbrel:~ $ cd umbrel/
umbrel@umbrel:~/umbrel $ ls
LICENSE.md README.md SECURITY.md app-data apps bin bitcoin db docker-compose.yml electrs events info.json karen lnd logs nginx scripts statuses templates tor
umbrel@umbrel:~/umbrel $ id
uid=1000(umbrel) gid=1000(umbrel) groups=1000(umbrel),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),105(input),109(netdev),996(docker),997(gpio),998(i2c),999(spi)
- Windows
Ok, als erstes gehen wir mal in den TH-Ordner und in das Daten Verzeichnis:
umbrel@umbrel:~/umbrel $ cd app-data/thunderhub/data/ umbrel@umbrel:~/umbrel/app-data/thunderhub/data $ nano thubConfig.yaml
Nano ist ein einfacher Texteditor. Natürlich kannst du auch gerne einen anderen Editor nutzen, wie z.B. VI/M, Emacs oder für die Pro’s sed. Beispiel-Ausgabe von meiner thubConfig.yaml:
masterPassword: thunderhub-$2b$12$UUIWQCLKOIQWTF123uNMASDGWPDAPDJ accounts: - name: Umbrel serverUrl: '{YML_ENV_1}' certificatePath: /lnd/tls.cert macaroonPath: /lnd/data/chain/bitcoin/mainnet/admin.macaroon
In Zeile Eins (1), siehst du das ge-hash-te Passwort. Dies startet hinter der Zeichenkette “thunderhub-”. Es wird bcrypt als Hashingalgorithmus verwendet. Dieser wurde Ende der 90er von Nils Provos entworfen und darf weiterhin als sicher betrachtet werden. Um ein neues Passwort zu generieren kannst du z.B. diesen Online-Generator verwenden. Oder du nimmst ein einfaches python Skript:
$ python thundercrypt.py -p sicherespasswort masterPassword: thunderhub-$2b$12$dysPVg6cRkoz0Qkq1EjMTu.iCXKOVSEybza8b8z3kxVlgyhLPpEW2
Falls euch die library bcrypt fehlt:
pip install bcrypt
Gib also einfach dein neues Passwort ein, lass es hashen und ersetze den String nach dem “thunderhub-” mit dem neuen Hash. Drücke CTRL+S und CTRL+X um die Datei zu speichern und Nano zu verlassen. Da die Konfigurationsdatei von TH immer nur beim Starten eingelesen wird, musst du ebenfalls den Docker Container neu starten. Als Alternative kannst du auch einfach Umbrel selber rebooten.
Zuerst prüfen wir die laufenden Container und suchen nach Thunderhub.
umbrel@umbrel:~/umbrel $ docker ps
Ok, das sind ja eine Menge Container.
ad488d7a9ceb shahanafarooqui/rtl:0.10.1 "/sbin/tini -g -- no…" 3 days ago Up 3 days 3000/tcp, 0.0.0.0:3001->3001/tcp ride-the-lightning_web_1
1d8bd7ab81ca louneskmt/loop:v0.12.1-beta "/bin/loopd --networ…" 3 days ago Up 3 days 8081/tcp, 11010/tcp ride-the-lightning_loop_1
ef244d3e2483 apotdevin/thunderhub:v0.12.14 "docker-entrypoint.s…" 4 days ago Up 4 days 0.0.0.0:3000->3000/tcp thunderhub_web_1
7902c05d3b86 mempool/frontend:v2.1.2 "/patch/entrypoint.s…" 4 days ago Up 4 days 80/tcp, 0.0.0.0:3006->3006/tcp mempool_web_1
7ace30a30c42 mariadb:10.5.8 "docker-entrypoint.s…" 4 days ago Up 4 days 3306/tcp mempool_mariadb_1
a53c3e3b2489 mempool/backend:v2.1.2 "docker-entrypoint.s…" 4 days ago Up 4 days 8999/tcp
Umbrel packt jeden Service in einen eigenen Container, dass ist aus mehreren Gründen sinnvoll und kann generell als Best Practice angesehen werden. Nichtsdestotrotz, macht es das ganze auf den ersten Blick etwas unübersichtlich. Daher suchen wir jetzt explizit nur nach dem thunderhub container.
umbrel@umbrel:~/umbrel $ docker ps|grep thunderhub
ef244d3e2483 apotdevin/thunderhub:v0.12.14 "docker-entrypoint.s…" 4 days ago Up 4 days 0.0.0.0:3000->3000/tcp thunderhub_web_1
Wir nehmen die ID aus dem ersten Feld (ef244d3e2483) und mit einem einfachen Kommando, lässt sich der Container neu starten.
umbrel@umbrel:~/umbrel $ docker restart ef244d3e2483
ef244d3e2483
Wurde dieser nun wirklich neu gestartet?
ef244d3e2483 apotdevin/thunderhub:v0.12.14 "docker-entrypoint.s…" 4 days ago Up 34 seconds 0.0.0.0:3000->3000/tcp thunderhub_web_1
Wenn alles geklappt hat, kannst du nun dein neues Passwort für Thunderhub nutzen.
Ende
Ich hoffe das Tutorial hat dir geholfen! :)
>> Home