Nodes Teil2: Die eigene Bitcoin Full Node bauen mit myNode

Im zweiten Teil der Nodes Serie, zeige ich dir mit einer Schritt für Schritt Anleitung, wie du ganz einfach selbst eine Bitcoin Full Node bauen kannst.

Nachdem wir uns im ersten Teil angeschaut haben, was eine Bitcoin Full Node ist, und warum man eine betreiben sollte geht es hier nun weiter.

Mit der Open-Source-Software myNode und einem Minicomputer namens Raspberry Pi*, ist, das aufsetzten der Node für jeden ein Kinderspiel.

Ich kann dir versichern, das Aufbauen und konfigurieren der Bitcoin Full Node macht einen Riesenspaß und vermittelt einiges an Technik und Bitcoin Wissen.

Als netter Nebeneffekt trägst du deinen eigenen Beitrag zum Bitcoin Netzwerk bei.

Also auf gehts, lass uns die ersten Bitcoin Blöcke gemeinsam synchronisieren.


Der Aufbau einer Bitcoin Node aus Einzelteilen ist inzwischen, dank einiger Open-Source-Projekte, kein Hexenwerk mehr.

Neben dem Spaß beim Aufbauen und ausprobieren ist dies auch der günstigste Weg, um eine eigene Node zu betreiben. Die einzelnen Komponenten sind üblicherweise etwas günstiger zu haben als vorkonfigurierte Full Nodes.

MyNode Bitcoin Full Node mit einem Raspberry Pi 4
Raspberry Pi 4 für die Verwendung als Bitcoin Full Node

Wenn du allerdings kein Interesse, oder einfach keine Zeit hast, kannst du natürlich auch auf fertige Lösungen zurückgreifen.

Die Kosten für die Kaufgeräte sind zwar etwas höher, dafür sparst du dir aber die Zeit für die Konfiguration. Zudem kannst du auf den Kundendienst der Hersteller zurückgreifen, falls es mal irgendwo klemmen sollte.

Bekannte Bitcoin Full Nodes zum kaufen sind:

Hier in den Beitrag stelle ich einen Eigenbau auf der Basis von myNode vor.

myNode oder Raspiblitz?

Neben myNode gibt es unter anderem noch das RaspiBlitz Projekt.

Der Hauptunterschied der beiden Projekte liegt, in den vorinstallierten Softwarepaketen und der Benutzerfreundlichkeit.

Bei RaspiBlitz erfolgt die Installation und Konfiguration größtenteils im Linux Terminal.

MyNode dagegen ist weitestgehend vorkonfiguriert und ist nahezu vollständig über eine Weboberfläche einstellbar.

Sofern du also bereits erste Erfahrungen in Linux gesammelt hast, spricht auch nichts dagegen deine Bitcoin Full Node mit RaspiBlitz aufzusetzen. Ansonsten empfehle ich dir mit myNode zu starten.

Die Hardware

Der Name suggeriert es teilweise schon, sowohl RaspiBlitz wie auch myNode können auf einen kompakten und günstigen Raspberry Pi 4* installiert werden.

Der bekannte Mini Computer hat in der neusten Generation genügend Leistungsreserven, um einen stabilen Betrieb zu gewährleisten. Selbst das eine oder andere Addon wie z. B. ein Electrum Server oder BTCPayserver stellen kein Problem für den Powerzwerg dar.

MyNode features

MyNode Features

Das myNode Paket bietet neben der Bitcoin Full Node noch einige weitere Funktionen.

myNode aims to be the easiest way to run a dedicated, easy to use, Bitcoin Node and Lightning Wallet! By combining the best open source software with our UI, management, and monitoring software, you can easily, safely, and securely use Bitcoin and Lightning.

https://mynodebtc.com/

Hier eine Auflistung der wichtigsten Features:

Bitcoin Full Node
Lightning Wallet incl. RTL und LND
Weboberfläche
Tor Netzwerk
Bitcoin Explorer
Electrum Server
QuickSync Funktion für die Blockchain
VPN (Premium Feature)
1-Click Update (Premium Feature)

Was muss beim betreiben einer Bitcoin Full Node beachtet werden?

Mit einer Bitcoin Full Node kannst du prinzipiell nicht falsch machen oder schaden anrichten.

Einzig mit dem integrierten (Lightning) Wallet solltest du als Anfänger vorsichtig sein. Sende nur wenige Sats an dein Node, falls du damit experimentieren möchtest! Im Zweifel können durch einen Fehler alle Coins verloren gehen.

Vor der Investition in die Node Hardware von rund 250–300 € solltest du dir über folgendes bewusst sein:

Eine Bitcoin Full Node benötigt eine Internet-Breitbandverbindung und verbraucht sehr viele Daten. 200 Gigabyte an Upload und 20 Gigabyte Download pro Monat sind nicht unüblich.
Die Node sollte dauerhaft laufen, um die Blockchain aktuell zu halten. Der Stromverbrauch des Raspberry Pi 4 beträgt im Schnitt 5 Watt. Das macht rund 55 kWh oder rund 20 € im Jahr.
Da es sich bei der Node hauptsächlich um Software handelt, solltest du diese immer auf dem neuesten Stand halten. D. h. ab und an wird etwas Zeit für die Wartung notwendig. Das hier vorgestellte myNode Paket bietet die Möglichkeit eines “1-Click Updates” in der Premium Variante.

Schritt für Schritt eine Bitcoin Full Node Bauen

Nachdem wir uns die Grundlagen angeschaut haben, kann es mit dem Bau der Bitcoin Full Node losgehen.

1. Node Hardware

MyNode Hardware

Theoretisch könntest du eine Full Node auf jeden beliebigen Rechner laufen lassen, der den Mindestanforderungen entspricht. Also auch z. B. auf dem PC den du gerade verwendest.

Da die Node aber dauerhaft betrieben werden sollte, ist das ganze nicht praktikabel.

Daher Bauen wir unsere myNode Bitcoin Node mit eigener Hardware auf.

Ich habe meine Node aus den folgenden Komponenten aufgebaut:

Raspberry Pi 4 4Gb*
Raspberry Pi Netzteil*
Argon One Gehäuse*
16Gb SD-Karte*
2,5“ Festplattengehäuse*
• +1TB HDD* oder besser +1TB SSD*
• Optional SD-Kartenleser* und Netzwerkkabel*

Die Liste ist nur eine Empfehlung von mir. Natürlich kannst du auch bereits vorhandenen Hardware weiterbenutzen oder alternative Produkte verwenden.

Wichtig ist auf den Raspberry Pi 4 zu setzten da dieser deutlich mehr Leistung hat als seine Vorgänger. Eine erste Synchronisierung der Blockchain (Initial Block Download) ist damit kein Problem.

Die Festplatte sollte groß genug sein

Meine erste Node habe ich mit einer 480 GB SSD aufgebaut. Diese war nach der Synchronisierung der Blockchain bereits zu 75 % gefüllt. Daher habe ich direkt eine 1 TB Festplatte verwendet.

2. Bitcoin Full Node bauen

Nachdem wir alle Komponenten vor uns liegen haben, beginnen wir mit der Montage der Hardware.

  • Zuerst stecken wir das Schwarze Erweiterungsboard des Argon One Gehäuses an den Raspberry Pi.
MyNode Bitcoin Full Node bauen
  • Im zweiten Schritt bringen wir die grauen Wärmeleitpads am Deckel des Gehäuses an. Achte darauf die durchsichtige Folie auf beiden! Seiten zu entfernen.
MyNode - Wärmeleitpads installieren
  • Im nächsten Schritt schieben wir den Raspberry Pi in den Gehäusedeckel. Achte dabei das die GPIO Pins ordentlich in die Steckerleiste eintauchen. Bei meinem Gehäuse war ein leichter Druck nötig um den Raspberry Pi zu montieren.
  • Sobald der Mini-PC an seinem vorgesehenen Platz ist, wird er mit 4 Schrauben gesichert.
MyNode Bitcoin Full Node bauen
  • Jetzt wird der Gehäuseboden mit 4 Schrauben befestigt und die Gummifüße aufgeklebt. Die Montage des Rpi ist damit abgeschlossen.
  • Die Festplatte wird in dem Gehäuse durch einfaches einschieben montiert.
  • Wichtig: Ich hatte zuletzt Probleme mit dem Synchronisieren der Blockchain, wenn die HDD/SSD mit einer der blauen USB 3.0 Buchse verbunden war. MyNode empfiehlt aufgrund von Treiberproblemen die Verwendung der langsameren schwarzen USB Buchsen des RPI.

    Seit dem wechsel funktioniert bei mir auch wieder alles einwandfrei.
MyNode Bitcoin Full Node Rückseite

Die Hardware der Node ist damit fertig aufgebaut und es geht weiter mit der Software.

3. SD-Karte mit myNode beschreiben

Im dritten Schritt schreiben wir die myNode Software auf die SD-Karte.

  • Lade dir den Balena Etcher bei https://www.balena.io/etcher/ herunter. Mit diesem Programm kannst du das eben heruntergeladenen myNode Image auf die SD-Karte schreiben.
  • Wähle dazu zuerst das heruntergeladen Image aus.
  • Im nächsten Schritt wählst du die SD-Karte aus.
  • Den Schreibvorgang startest du mit einem klick auf Flash!
Balena Etcher zum Flashen von myNode auf die SD-Karte
  • Nach wenigen Minuten sollte die Meldung kommen, dass der Schreibvorgang erfolgreich war. Du musst nun nur noch die SD-Karte in dein Raspberry Pi stecken.

4. Die myNode das erste mal starten

Nun geht es weiter mit dem Einrichten der myNode Bitcoin Full Node.

MyNode Bitcoin Full Node
  • Vergewissere dich das die Festplatte über einen USB-Port mit dem Raspberry Pi verbunden ist.
  • Stelle sicher, dass die mit dem myNode Image beschriebene SD-Karte richtig eingesteckt ist.
  • Verbinde das Netzteil mit dem Raspberry Pi.
  • Verbinde die deine Node mit dem Internet.
  • Schalte den Raspberry Pi mit einem Druck auf den Power-Schalter (auf der Rückseite des Argon One Gehäuses) ein.

5. Mit der myNode verbinden

  • Nachdem du die myNode gestartet hast, kannst du dich über einen Webbrowser mit der Oberfläche verbinden und von dort aus konfigurieren.
  • Um auf die Oberfläche zu gelangen, gebe http://mynode.local/ oder http://mynode_ip_addresse/ in den Browser ein.
  • In meinem fall, musste ich die IP-Adresse der myNode eingeben um auf die Weboberfläche zu gelangen.
  • Die IP-Adresse der myNode findest du am einfachsten über deinen Router. Bei der FRITZ!Box erscheint unter Heimnetz->Heimnetzübersicht ein Gerät mit dem Namen myNode. Du kannst auch einfach auf den Namen klicken um auf die Weboberfläche zu gelangen.
MyNode mit der FritzBox finden
  • Alternativ kannst du auch das Programm Advanced IP Scanner verwenden und nach der myNode in deinem Netzwerk suchen.
MyNode mit Advanced IP Scanner finden

5. Die myNode Edition wählen und Blockchain synchronisieren

MyNode gibt es in zwei Varianten: Entweder verwendest du die kostenlose Community Edition oder kaufst dir die Premium Version mit einem erweiterten Funktionsumfang.

Der Kaufpreis der Premium Version kommt der Bitcoin Community zugute und unterstützt die Entwickler der Node. Neben den zusätzlichen Features ist es also keine schlechte Idee auf die Premium Version upzugraden.

  • Bei dem ersten Aufruf der Weboberfläche wird ein Passwort verlangt. Das vorher festgelegte Standard Passwort ist „bolt“ und sollte von dir später geändert werden.
MyNode Login Screen
  • Als Nächstes wirst du nach einem Produktkey gefragt. Entweder du gibst hier einen zuvor erworbenen Key ein oder verwendest die kostenlose Community Edition. Ich persönlich habe mit der Community Edition meine ersten Versuche unternommen und habe inzwischen auf die Premium Version gewechselt. Die 99 $ sind auf jeden fall gut angelegt.
MyNode Pduktschlüssel
  • Bevor die Bitcoin Full Node mit ihrer Arbeit beginnen kann, muss noch der Initial Block Download (IBD) durchgeführt werden. Dabei wird die komplette Blockchain von der Node verifiziert und synchronisiert. In meinem Fall hat die Synchronisierung ungefähr 3 Tage beansprucht (einem Raspberry Pi4 und einer SSD). Bei der Verwendung einer HDD verlängert sich der IBD auf ca. 2–3 Wochen aufgrund der langsameren Zugriffszeiten.
MyNode Blockchain Synchronisieren
  • Die Grundeinrichtung ist damit abgeschlossen und deine selbst gebaute Bitcoin Full Node ist per Tor Netzwerk erreichbar. Deine Node ist damit also teil des Bitcoin Netzwerks und hilft dabei es abzusichern.

6. Standardpasswort ändern

Aus Sicherheitsgründen solltest du das vorgegebene Passwort von myNode ändern.

  • Klicke auf “Settings” um zu den Einstellungen zu kommen.
  • Scrolle nach unten zu dem Punkt “Change Passwort”
  • Gebe das aktuelle Passwort ein (“bolt”) und wähle ein neues, möglichst sicheres Passwort.

Bonus: myNode Community Edition aktualisieren

Die Community Edition von myNode unterstützt keine One-Klick-Updates. Daher hier eine Schritt für Schritt Anleitung wie du die Bitcoin Full Node auf die letzte Version aktualisierst.

  • Lade dir das Terminalprogramm Putty herunter. Unter Mac/Linux kannst du auch das Terminal verwenden.
MyNode mit Putty verbinden
  • Verbinde dich mit deiner myNode per SSH. Starte dazu Putty oder ein Terminal und gebe folgende Zeilen ein:
ssh admin@mynode.local

oder alternativ mit der IP-Adresse der Node:

ssh admin@IP-Adresse-deiner-Mynode
  • Beim ersten Verbinden musst du den Hinweis mit “Ja” bestätigen, um dich zu verbinden
  • Gebe nun dein myNode Passwort ein (sofern noch nicht geändert ist dies „bolt“)

Für das Update von myNode gibst du nacheinander folgende Befehle in der Konsole ein:

  • Lade das github repository auf deine myNode:
git clone https://github.com/mynodebtc/mynode.git mynode-git

Falls du zuvor schon ein Update eingespielt hast, wirst du nun eine Fehlermeldung bekommen. Lösche einfach mit

rm -rf mynode-git

den Ordner und führe den git clone Befehl noch einmal aus.

  • Wechsel in den neu angelegten myNode ordner
cd mynode-git
  • Erstelle eine Tar Datei vom Root Dateisystem
make rootfs
  • Starte einen Webserver
make start_file_server
  • Gehe zurück in den Home Ordner
cd ~
  • Entpacke das eben erstellte Tar-Archiv und spiele das myNode Update ein
sudo mynode-local-upgrade mynode.local 

Um das Update zu starten, musst du noch dein Admin Passwort eingeben.

Wenn alles geklappt hat, sollte deine myNode aktualisiert worden sein und automatisch neustarten.

Bonus: Script für das myNode update

Da ich nicht immer die oben beschriebenen Schritte manuell eingeben wollte, habe ich mir ein kleines Script geschrieben.

Falls du auch das Script verwenden möchtest, folge einfach den folgenden Schritten, nachdem du dich per SSH eingeloggt hast.

  • Mit dem Editor Nano erstellen wir eine neue Textdatei mit dem Namen “node_update”
nano node_update
  • In dem Editor gibts du folgende Codezeilen ein und speicherst das Dokument mit “STRG+X” und “Y” ab
#!/bin/bash

if [ -d ./mynode-git/ ]
  then
 rm -rf mynode-git
fi
git clone https://github.com/mynodebtc/mynode.git mynode-git
cd mynode-git
make rootfs
make start_file_server
cd ~
sudo mynode-local-upgrade mynode.local
  • Im nächsten Schritt machst du das Dokument ausführbar
 chmod +x node_update
  • Mit dem Script kannst du nun mit folgendem Befehl deine myNode immer auf die neuste Version aktualisieren.
sudo ./node_update

Optional: Argon One script installieren

Falls du auch ein Argon One Gehäuse* wie ich verwende, kannst du noch das Argon One Script installieren. Damit aktivierst du die Lüftersteuerung und den Power-Button.

  • Verbinde dich einfach per SSH mit deiner myNode und gebe folgenden Befehl ein
curl https://download.argon40.com/argon1.sh | bash
  • Nach einem Neustart sind dann alle Funktionen verfügbar

Bitcoin Full Node Bauen – Mein Fazit

MyNode Bitcoin Full Node

Ich hoffe, ich konnte dir mit meiner Anleitung die Angst nehmen selbst eine eigene Bitcoin Full Node aufzubauen.

Ich persönlich hatte sehr viel Spaß dabei und konnte einiges dazu lernen. Mal schauen, vielleicht baue ich demnächst noch eine RaspiBlitz Full Node auf.

Aktuell beschäftige ich mich aber erst einmal mit dem Lightning Netzwerk und werde in kürze meinen ersten Channel eröffnen. Falls es genügend Interessenten gibt, werde ich hierzu wieder eine Schritt für Schritt Anleitung veröffentlichen.

Melde dich einfach bei mir, falls du mehr darüber erfahren möchtest.


Lass mich doch im Kommentar wissen, ob Du auch schon eine Bitcoin Full Node aufgebaut hast. Welche Erfahrungen hast du mit dem Bau und der Einrichtung gemacht?

Titelbild: pixabay.com ©TheDigitalArtist(CC0 Creative Commons; bearbeitet von R. Hör)

10 Gedanken zu „Nodes Teil2: Die eigene Bitcoin Full Node bauen mit myNode“

  1. Hi,
    sehr gut erklärt! Es war einfach das ganze umzusetzen.
    Danke dafür.
    Meine Frage ist jetzt nur, wer steckt hinter mynode ?
    Immerhin habe ich einen Rechner mit Betriebssystem direkt in meinem Netzwerk zu Hause der alles sieht und ansteuern kann. Das brauche ich ja um mit mobilen Geräten die Chain über meine eigene Node abzugleichen.

    Antworten
    • Hallo Hans,

      vielen Dank, es freut mich das dir meine Anleitung weitergeholfen hat.

      Du hast natürlich vollkommen recht deinem Einwand bezüglich der Sicherheit. Den Herausgebern von myNode (und allen anderen Softwareprodukten, die sich mit dem Internet verbinden) muss man ein gewisses Vertrauen entgegenbringen.

      Dank dem myNode Github hast du die Möglichkeit mehr über das myNode Paket zu erfahren. Zudem siehst du untercontributors wer am meisten zu dem Projekt beigetragen hat.

      Gruß
      Richard

      Antworten
      • Hallo Richard,

        danke für die schnelle Antwort.
        So wird das ganz etwas ersichtlicher. Ich kenne die Seite Github nicht und wusste nicht was diese darstellt.
        Meine Node ist eine Woche gelaufen, dann wurde ein Bitcoinfehler angezeigt. Diesen konnte ich nicht regenerieren also alles nochmal neu und auf Werkseinstellungen zurück.
        Eine weitere Frage habe ich noch, muß ich die ganzen Ports in meiner Firewall für my Node öffnen?
        Welche Ports wären das ?
        Läuft deine Node noch, und das ohne Zwischenfälle ?

        Antworten
        • Hallo Hans,

          ja meine Bitcoin Full Node läuft aktuell und das wird auch so bleiben 🙂
          Ich hatte bisher keine Probleme mit myNode und habe inzwischen auf die Premium Version aktualisiert.

          Für die reine Node Funktion musst du keinen Port Freigeben. Deine myNode verbindet sich automatisch mit dem Tor Netzwerk und verknüpft sich dann mit den anderen Peers.
          Prüfen kannst du das, wenn du unter “Core Services” im Bitcoin Reiter auf “Manage” klickst. Dort wird dann unter Peers angezeigt mit welchen Nodes du verbunden bist.

          Eine Portfreigabe ist nur notwendig, wenn du von unterwegs aus per VPN auf die Node zugreifen möchtest.

          Antworten
  2. Hallo Richard,

    vielen Dank für diese tolle Anleitung – Hat mir wirklich sehr weitergeholfen.

    Hab 2 Fragen:

    1.Ich habe mir extra eine 1,5TB Festplatte gekauft. Damit ich erstmal ruhe habe. Nun zeigt mir myNode aber “Disk Usage”: 51% an ? Ist das ein Fehler? Die Blockhaingröße beträgt doch “erst” 317GB…

    2.Wo finde ich genau meine Bitcoin Adresse? (Public key)

    Gruß Julian

    Antworten
    • Hallo Julian,

      vielen Dank für dein Lob. So etwas spornt immer an die Zeit zu investieren, um solche Artikel zu schreiben. 🙂

      Nun zu deinen Fragen:

      1. Bei meiner Node sind derzeit 393Gb (46%) der 1Tb Festplatte belegt. Dabei habe ich den Electrum Server aktiviert, welcher auch noch etwas Plattenspeicher benötigt. Die 51 % kommen mir daher etwas ungewöhnlich vor. Unter Status – “Open Netdata” kannst du mal nachschauen wie viel Speicherplatz deiner Festplatte tatsächlich belegt und frei ist.

      2. MyNode hat eine Bitcoin Lightning Wallet integriert. Ein neues Wallet erstellst du über den “Lightning Wallet” Button auf der Hauptseite.
      Danach stehen dir verschiedene Interfaces zur Verfügung um das Wallet zu verwalten und auch Public-Key zu generieren. Ich persönlich finde RTL recht übersichtlich. Das ganze ist leider nicht so einfach und übersichtlich und eine komplette Beschreibung würde den Umfang hier sprengen.

      Bei den myNode Guides findest du aber zumindest eine kurze Zusammenfassung:
      Lightning Wallet erstellen -> https://mynodebtc.com/guide/create_lightning_wallet
      Ride the Lightning (RTL) Interface -> https://mynodebtc.com/guide/rtl

      Für den Anfang empfehle ich nur mit Spielgeld zu hantieren!
      Falls du etwas falsch machst (was ganz schnell passieren kann), sind deine Bitcoins bzw. Sats im Zweifel verloren.

      Gruß
      Richard

      Antworten
  3. Hallo Richard,

    vielen Dank für die Übersicht. Als Folgeschritt könntest du das Thema angehen wie man SPVs mit der eigenen Node verbindet.
    Eine Anmerkung zum initialen Syncen der Blockchain: Laut MyNode wird QuickSync nicht empfohlen bei der Verwendung einer SSD. Wie hast du bei dir die Blockchain geladen?

    Danke und Gruß
    Matthias

    Antworten
    • Hallo Matthias,

      vielen Dank für die Rückmeldung. Die Idee mit dem SPVs Wallets finde ich Gut und werde ich mir mal anschauen.
      Vielleicht gibt es da eine relativ einfache und schöne Möglichkeit, die für den “Normaluser” nicht zu kompliziert ist.

      Bezüglich dem Synchronisieren der Blockchain habe ich mit SSD und HDD inzwischen mehrere Versuche unternommen. Dabei hat QuickSync und das normale Synchronisieren immer geklappt.
      Wichtig: Ich hatte zuletzt immer wieder Probleme beim Schreiben der Blockchain auf die Platte. Ein Wechsel von der Blauen USB Buches des RPI auf die Weiße hat hier geholfen.
      Das ganze hängt wohl mit den USB Treibern vom RPI zusammen der sich ab und an aufhängt.

      Gruß
      Richard

      Antworten
  4. Danke für die Anleitung.Werde mir demnächst den Full Node anschaffen.Meine Frage wäre wie ist das mit der Provider Zwangstrennung.Startet der Node da von alleine bzw. läuft weiter oder muss man da etwas beachten?

    Gruß
    Sylvia

    Antworten
    • Hallo Sylvia,

      eine sehr gute Entscheidung:)
      Die Providertrennung ist kein Problem. Die Node verbindet sich wieder automatisch, nachdem eine Internetverbindung besteht.
      Sollte die Node mal länger vom Internet getrennt sein, synchronisiert Sie auch wieder Blockchain und funktioniert nach kurzer Zeit wieder Normal.

      Viele Grüße
      Richard

      Antworten

Schreibe einen Kommentar