Doichain Academy

Lesson 4 / 6 · 20 minutes

Grundhärtung von Server und Node

Eine Node ist ein Dienst im Internet und ein lohnendes Ziel, vor allem wenn ein Wallet Guthaben hält. Diese Lektion beschreibt die Grundhärtung, die jede Node braucht.

Netzwerk

Port Freigabe
8338 (P2P) offen, wenn die Node öffentlich erreichbar sein soll
8339 (RPC) nie öffentlich, nur 127.0.0.1
22 (SSH) nur per Schlüssel, möglichst auf bekannte Adressen oder ein VPN beschränkt

Eine Firewall (etwa ufw oder nftables) lässt nur diese Ports zu. Braucht ein anderer Server RPC, dann über einen SSH-Tunnel oder ein VPN, nicht über eine offene Freigabe.

RPC-Zugang

  • rpcauth statt rpcpassword. Das Skript share/rpcauth/rpcauth.py aus dem Quellcode erzeugt eine Zeile rpcauth=<benutzer>:<salt>$<hash>. In der Konfiguration steht dann nur der gesalzene Hash, das Passwort kennt nur die Anwendung.
  • Für jede Anwendung einen eigenen RPC-Benutzer, damit sich ein Zugang einzeln sperren lässt.
  • Die doichain.conf nur für den Dienstbenutzer lesbar machen (chmod 600).

Betriebssystem

  • Node unter eigenem Benutzer, nie als root.
  • SSH nur mit Schlüsseln, Passwortanmeldung aus, dazu fail2ban gegen Rateversuche.
  • Sicherheitsupdates des Systems automatisch einspielen.
  • Doichain-Updates dagegen bewusst und nur aus signierten Releases (Lektion 1).

Wallet

Viele Nodes brauchen gar kein Wallet, etwa reine Daten-Nodes für Explorer oder Indexer.

Lage Maßnahme
kein Wallet nötig disablewallet=1, dann gibt es auch keine Wallet-RPCs
Wallet mit Guthaben mit Passphrase verschlüsseln (encryptwallet), nur so viel Guthaben wie für den Betrieb nötig
Sicherung backupwallet /pfad/datei regelmäßig, Kopie verschlüsselt außerhalb des Servers

Die Wiederherstellung einer Sicherung sollte mindestens einmal geprobt sein. Eine ungetestete Sicherung ist keine Sicherung.

Geheimnisse

RPC-Passwörter, Wallet-Passphrasen und API-Schlüssel gehören in einen Passwort-Tresor, nicht in Notizen, Tickets, Chats oder Repositories. Wer sie zur Fehlersuche teilt, ersetzt sie danach.

Merksätze

  • RPC nie öffentlich, rpcauth statt Klartextpasswort.
  • Eigener Benutzer, SSH nur mit Schlüssel, Firewall.
  • Kein Wallet ohne Bedarf, sonst verschlüsseln und Sicherung testen.

Please sign in to save your progress and take the exam. Register

Next →