Info
In diesem Howto gehe ich alle Schritte für die Installation von Samourai Dojo Vanilla durch. Diese Installation setzt voraus, dass Bitcoin Core und ein Indexer bereits installiert ist. Ich gehe allerdings auch auf die Punkte ein, wo man diese beiden Komponenten über Dojo Vanilla mitinstallieren kann.
Vorbereitung
Bevor wir mit der Dojo Vanilla Installation loslegen können, müssen wir Docker und Docker-Compose auf unserem System installieren, falls noch nicht vorhanden.
|
|
|
|
Hinzufügen des GPG-Keys
|
|
|
|
Hinzufügen des Repositories
|
|
|
|
Check ob es geklappt hat
|
|
Als Ausgabe müsste so etwas kommen:
|
|
Hinzufügen des Benutzers in die Docker-Gruppe
|
|
Wir melden uns ab und neu an, damit die Rechte wirksam sind.
Installation Docker-Compose
Als weitere Komponente müssen wir Docker-Compose installieren.
|
|
Rechte setzen für docker-compose
|
|
Check ob alles geklappt hat
|
|
Es müsste so etwas kommen:
|
|
Download Dojo Vanilla
Wir wechseln in unser Download Verzeichnis
|
|
Und laden die aktuelle Dojo-Version herunter, die wir auf dem Samourai Repository finden https://code.samourai.io/dojo/samourai-dojo/-/releases
wget https://code.samourai.io/dojo/samourai-dojo/-/archive/v1.18.1/samourai-dojo-v1.18.1.zip
```bash
Als nächstes entpacken wir die Datei
```bash
unzip samourai-dojo-v1.18.1.zip -d .
Jetzt benennen wir den entpackten Order auf Dojo um und verschieben ihn gleichzeitig in unser Benutzerverzeichnis
|
|
Anpassen der Konfigurationen
Jetzt geht es an das anpassen der Konfigurationen, dazu wechseln wir uns unser Dojo-Verzeichnis und dann gleich in das Docker-Verzeichnis
|
|
Hier finden wir ein Verzeichnis conf, in das wir wechseln
|
|
In diesem Verzeichnis befinden sich alle Konfigurationen, die wir für Dojo Vanilla brauchen.
Wir starten mit der ersten Datei
docker-bitcoind.conf.tpl
|
|
Anpassen des RPC_Users und Passworts
|
|
andern in:
|
|
Passwort anpassen
|
|
andern in:
|
|
Wir scrollen weiter nach unten bis zum Punkt BITCOIND_INSTALL. Hier stellen wir auf off, falls wir schon einen BitcoinD installiert haben.
|
|
andern in:
|
|
Anpassen der BitcoinD IP-Adresse
|
|
andern in die IP wo BitcoinD installiert ist
|
|
Port anpassen
|
|
andern in die IP wo BitcoinD installiert ist
|
|
Anpassen der ZMQ Parameter, die wir in unserer bitcoin.conf finden.
|
|
ändern in
|
|
ZMQ BLK HASH
|
|
ändern in
|
|
Jetzt speichern wir die Konfiguration ab. STRG +x, y und Enter.
docker-common.conf.tpl
Hier checken wir, welches Netz wir nutzen möchten. Für Mainnet passt alles, falls wir Testnet wollen, dann setzen wir von mainnet auf testnet.
docker-explorer.conf.tpl
Hier können wir alle Parameter lassen, außer wir möchten nur Mempool Space nutzen, dann können wir Explorer auf off stellen.
docker-indexer.conf.tpl
Hier checken wir, ob INDEXER_INSTALL auf off gestellt ist, falls wir schon einen Indexer wie Electrum oder Fulcrum installiert haben. Falls nicht, können wir diesen hier auf on stellen.
Falls wir Electrum oder Fulcrum nutzen möchten, müssen wir folgenden Parameter ändern
|
|
ändern in
|
|
Ändern der IP-Adresse des Indexers auf die IP, wo der Indexer installiert ist.
|
|
ändern in
|
|
Indexer Port auf SSL umstellen, falls wir den Indexer auf SSL gestellt haben
|
|
ändern in
|
|
Falls wir einen Fulcrum Indexer nutzen, dann müssen wir diesen Parameter ändern
|
|
ändern in
|
|
Falls wir TLS nutzen möchten, dann passen wir diesen Parameter an:
INDEXER_PROTOCOL=tcp
ändern in
|
|
Jetzt speichern wir die Konfiguration ab. STRG +x, y und Enter.
docker-mysql.conf.tpl
In dieser Konfiguration sollten wir dringend die Passwörter ändern.
|
|
ändern in
|
|
Und auch dieses Passwort muss dringend geändert werden:
|
|
ändern in
MYSQL_PASSWORD=8986798hjdfserterst
Jetzt speichern wir die Konfiguration ab. STRG +x, y und Enter.
docker-node.conf.tpl
In dieser Datei setzen wir unter anderem das Passwort für unser Dojo Maintenance Tool
NODE_API_KEY=myApiKey
ändern in
NODE_API_KEY=8986798hjdfserterst
Hier setzen wir das Passwort für das Dojo Maintenace Tool
NODE_ADMIN_KEY=myAdminKey
ändern in
NODE_ADMIN_KEY=8986798hjdfserterst
Zum Schluss müssen wir noch unseren lokalen Indexer setzen
NODE_ACTIVE_INDEXER=local_bitcoind
ändern in
NODE_ACTIVE_INDEXER=local_indexer
Jetzt speichern wir die Konfiguration ab. STRG +x, y und Enter.
docker-tor.conf.tpl
Hier können wir alles so lassen wir es ist.
docker-whirlpool.conf.tpl
Wenn wir Whirlpool innerhalb von Docker laufen lassen möchten, dann setzen wir folgenden Parameter
WHIRLPOOL_INSTALL=off
ändern in
WHIRLPOOL_INSTALL=on
Abspeichern mit STRG +x, y und Enter.
Alternativ können wir Whirlpool händisch installieren, so steht uns die Option zur Verfügung, direkt auf einen externen XPUB nach X Runden zu mixen. Weiter unten sind die Schritte zu finden.
Dojo Vanilla installieren
Um Dojo mit unserer Konfiguration zu installieren, geben wir ein:
./dojo.sh install
Wir bestätigen mit y.
Sobald am Bildschirm “INFO Tracker : Processing active Mempool” auftaucht, ist die Installation abgeschlossen. Wir müssen allerdings warten, bis alles fertig gesynct hat, was eine Zeit lang dauert. Sobald fertig, geht es weiter.
Whirlpool - alternative Installation
Wenn wir Whirlpool händisch installieren möchten, suchen wir die Seite https://code.samourai.io/whirlpool/whirlpool-client-cli/-/releases auf, wo wir die aktuellste Whirlpool-CLI-Version finden.
Der Vorteil von einer eigenen Installation wäre unter anderem die Möglichkeit, direkt auf einen XPUB/ZPUB zu mixen.
Bevor wir mit der Einrichtung starten können, müssen wir Java installieren. Auf Ubuntu geben wir dazu einfach java im Terminal ein, damit wir die möglichen Optionen sehen.
Check ob Java installiert ist
java
Falls nicht, dann installieren wir Java
sudo apt install openjdk-18-jre-headless
Nach der Installation erstellen wir ein Verzeichnis Whirlpool in unserem Benutzerverzeichnis
mkdir ~/Whirlpool
Wir wechseln in das Verzeichnis
cd ~/Whirlpool
Jetzt laden wir die aktuelle jar-Datei vom Samourai Whirlpool CLI Repo herunter, die wir unter Download: finden. Repo
wget https://code.samourai.io/whirlpool/whirlpool-client-cli/uploads/63621e145967f536a562851853bd0990/whirlpool-client-cli-0.10.16-run.jar
Einrichtung des Service-Files
|
|
Einfügen:
|
|
Abspeichern mit STRG +x, y und Enter.
|
|
Wir starten das Service noch nicht!
Falls es Whirlpool CLI-Updates gibt, müssen wir im Service-File die Zeile mit ExecStart anpassen!
Installation von Whirlpool GUI
Auf der Samourai Webseite können wir unter Download immer die aktuelle Version von Whirlpool GUI herunterladen. Diese installieren wir.
Fertig
Alle Installationsschritte von Dojo Vanilla sind damit vollständig abgeschlossen. Wer alle Befehle von dojo.sh wissen möchte, findet diese auf dem Repo von Samourai.
Upgrade
Zuerst wechseln wir in unser Dojo-Verzeichnis
|
|
Dojo stoppen
|
|
Jetzt wechseln wir in unser Downloadverzeichnis
|
|
Und laden dort die aktuelle Dojo Version herunter
|
|
Danach entpacken wir die Zip-Datei.
|
|
Zur Sicherheit erstellen wir ein Backup von unserem aktuellen Dojo - nicht unbedingt notwendig.
|
|
|
|
Und jetzt kopieren wir den Inhalt dieser Zip-Datei in unser aktuelles Dojo-Verzeichnis:
|
|
Dojo Upgrade starten
|
|
Dojo sollte jetzt wieder gestartet sein. Um zu checken, ob die aktuelle Version läuft, können wir diesen Befehl absetzen:
|
|
Anbindung Samourai Wallet mit Dojo und Whirlpool
Dojo Maintenance Tool (DMT) starten
Das Dojo Maintenance Tool ist über eine Tor Onion-Adresse verfügbar. Mit diesem Tool können wir unsere Samourai Wallet verwalten, sollte es Probleme geben, wie zum Beispiel, dass die Anzeige der Bitcoin in der Wallet nicht stimmt. Die Tor-Adresse erhalten wir mit dem Befehl:
|
|
Wir starten den Tor-Browser und geben die Onion-Adresse ein. Bei der Passwortabfrage müssen wir das Passwort eingeben, dass die im docker-node-tpl.conf gesetzt haben.
Installation Samourai Wallet und Anbindung an Dojo
Von der Webseite https://samouraiwallet.com laden wir die Samourai Wallet herunter. Zu finden ist dieser unter “Download”. Dort finden sich mehrere Möglichkeiten. Entweder ein direkter Download der APK-Datei, über F-Droid oder auch Google Play.
Wir starten die Wallet und wählen MAINNET oder TESTNET aus, je nach unserer Dojo-Installation. Dann klicken wir auf “Get Started”. Jetzt wählen wir das Verzeichnis aus, wo die Wallet-Backups gespeichert werden sollen. Danach wählen wir aus, ob wir Tor aktivieren möchten. Tor brauchen wir für die Verbindung für Dojo. Dann klicken wir auf Dojo und scannen den QR-Code ein, den wir im Dojo Maintenance Tool unter Tools - Pairing finden. Wenn alles passt, sollte dann unter Dojo status “Connected” stehen.
Jetzt müssen wir eine Passphrase einstellen, diese muss SICHER sein! Wir notieren uns die 12 Wörter, die wir bei einer Wiederherstellung zusammen mit der Passphrase brauchen. Wer ein Recovery-Sheet möchte findet dieses hier.
Die Wallet ist jetzt fertig installiert und eingerichtet.
Anbindung Samourai Wallet mit Whirlpool CLI
|
|
INPUT REQUIRED für Pairing Payload - hier müssen wir unseren Pairing Payload eingeben, den wir in unserer Samourai Wallet unter Settings -> Transactions -> Experimental finden. Diesen kopieren wir und fügen wir in der Abfrage ein.
INPUT REQUIRED für Passphrase - hier geben wir unsere Passphrase der Wallet ein.
Damit ist alles abgeschlossen und wir können ab jetzt Whirlpool über unser Whirlpool Service starten.
|
|
Check ob alles läuft
|
|
Option - Mit to XPUB
Falls wir auf einen externen XPUB mixen wollen, müssen wir dies einmal bei Whirlpool bekannt geben. Dies machen wir mit dem Parameter –set-external-xpub bash
java -jar whirlpool-client-cli-0.10.16-run.jar --set-external-xpub
In der Abfrage “External BIP84 XPub/ZPub” geben wir den XPUB ein.
In der nächsten Abfrage “Chain?(0)” (Standard für m/84'/0') geben wir 0 ein.
In der nächsten Abfrage “Mixs?(>0)>” geben wir die Anzahl der Mixrunden ein, bevor die gemixten UTXOs zum Cold Storage geschickt werden.
INPUT REQUIRED Continue y/n - hier checken wir 3 Adressen die aus dem ZPUB berechnet wurden und dir wir mit der Wallet von unserem Cold Storage überprüfen sollten. Wenn diese passen bestätigen wir mit y.
Mit diesen Schritten ist jetzt alles in die whirlpool.cli.properties eingetragen und wir können Whirlpool normal über unser Whirlpool Service starten und stoppen.
Anbindung Whirlpool GUI an Whirlpool CLI
Für die Verbindung von Whirlpool GUI mit Whirlpool CLI brauchen wir die IP-Adresse von Whirlpool CLI und einen apiKey.
Wir starten Whirlpool GUI und klicken auf Advanced: remote CLI. Im Feld geben wir die IP-Adresse von dem Server an, wo wir Dojo installiert haben, das Port 8899 bleibt.
Beispiel:
|
|
In unserem Whirlpool-Verzeichnis finden wir eine Datei namens whirlpool-cli-config.properties. In dieser Datei finden wir cli-apiKey, den wir in das Feld “API Key” eingeben.
|
|
Dann klicken wir auf Connect.
Zuletzt werden wir nach der Passphrase gefragt, nach der Eingabe ist alles verbunden.
Über das Whirlpool GUI sind auch Empfangsadressen generierbar unter Deposit, womit man nicht die Samourai Wallet öffnen muss. Während dem Mix muss Whirlpool GUI nicht laufen. Unter Configuration kann ein SCODE eingeben werden, der und zu erhältlich ist und mit dem man einen Rabatt auf die Fees erhält.
Muss alles resetet werden, kann dies unter System - Reset GUI durchgeführt werden.
Alle Infos dazu sind auf der Samourai Webseite zu finden.