Warum sollten Sie einen versteckten Bitcoin-Dienst auf Ihrem Knoten laufen lassen?
Es erhöht die Privatsphäre von anderen Bitcoin-Nutzern, die ihre Aktionen über Tor anonymisieren. Insbesondere ist es eine Gegenmaßnahme gegen viele der “Netzwerkbeobachter”-Angriffe, die im Bedrohungsmodell des Open Bitcoin Privacy Project aufgeführt sind.
Es macht deinen eigenen Knoten robuster gegen Sybil-Angriffe und Netzwerkpartitionen.
Es benötigt nicht viel mehr Rechenressourcen, um zu laufen, nur die einmaligen Kosten für die Konfiguration Ihres Rechners.
Nur 2,6% der erreichbaren Knoten betreiben derzeit einen versteckten Tor-Dienst. Über https://bitnodes.21.co
Es gibt mehrere Möglichkeiten, einen Bitcoin-Knoten so zu konfigurieren, dass er sich mit Tor verbindet, die in der Dokumentation beschrieben sind; für den Zweck dieser Anleitung konzentrieren wir uns auf die dritte Option: “automatisch auf Tor lauschen”.
Seit Bitcoin Core 0.12 wird ein Knoten automatisch einen versteckten Dienst ausführen, wenn er sich mit einem lokalen Tor-Daemon verbinden kann. Allerdings müssen wir sicherstellen, dass ein paar Dinge richtig konfiguriert sind, damit der Knoten und der Daemon miteinander reden können.
Zuerst müssen wir den Anweisungen folgen, um Tor zu installieren. Wir müssen den Codenamen der Ubuntu-Version wissen:
username@host:~$ lsb_release -c
Codename: xenial
Nun können wir Tor installieren; ersetzen Sie mit Ihrer Version.
username@host:~$ sudo vim /etc/apt/sources.list
Fügen Sie diese beiden Zeilen in die Datei ein und speichern Sie sie:
deb http://deb.torproject.org/torproject.org main
deb-src http://deb.torproject.org/torproject.org main
username@host:~$ gpg --keyserver keys.gnupg.net --recv 886DDD89
username@host:~$ gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
username@host:~$ sudo apt-get update
username@host:~$ sudo apt-get install tor deb.torproject.org-keyring
Jetzt, wo Tor installiert ist und läuft, überprüfe die Konfiguration:
username@host:~$ sudo vim /usr/share/tor/tor-service-defaults-torrc
Stelle sicher, dass die folgenden Zeilen (irgendwo) in dieser Konfigurationsdatei stehen:
ControlPort 9051
CookieAuthentifizierung 1
CookieAuthFileGroupReadable 1
Wenn eine dieser Zeilen fehlt, speichern Sie die Konfigurationsdatei und starten Sie den Tor-Daemon neu über:
username@host:~$ sudo /etc/init.d/tor restart
Nun müssen wir sicherstellen, dass der Linux-Benutzer, auf dem der bitcoind-Prozess läuft, Zugriff auf den Tor-Authentifizierungs-Cookie hat. Sie können den Namen des Tor-Benutzers ermitteln über:
username@host:~$ grep Benutzer /usr/share/tor/tor-service-defaults-torrc
User debian-tor
Ändern Sie nun den Benutzer, der bitcoind auf Ihrem Rechner ausführt, so, dass er Mitglied der Tor-Gruppe ist:
username@host:~$ sudo usermod -a -G debian-tor
An diesem Punkt (nur um sicher zu gehen) solltest du ein neues Terminalfenster / eine SSH-Sitzung öffnen, um sicherzustellen, dass der bitcoind-Benutzer die richtigen Rechte hat. In dem neuen Fenster können Sie die Berechtigungen überprüfen über:
username@host:~$ id
uid=1000(username) gid=100(benutzer) groups=100(benutzer),121(debian-tor)
Wenn Ihr Benutzer in der tor-Gruppe ist, können wir nun bitcoind starten. Stellen Sie sicher, dass Sie es zuerst stoppen, wenn es gerade läuft.
username@host:~$ bitcoin-cli stop
username@host:~$ bitcoind -daemon -debug=tor
Überprüfen Sie nun das Bitcoin-Protokoll, um sicherzustellen, dass die Konfiguration funktioniert:
username@host:~$ tail -f ~/.bitcoin/debug.log | grep tor
Sie sollten eine Ausgabe wie diese sehen:
2016-08-18 20:36:10 torcontrol thread start
2016-08-18 20:36:10 tor: Erfolgreich verbunden!
2016-08-18 20:36:10 tor: Verbunden mit Tor Version 0.2.8.6
2016-08-18 20:36:10 tor: Unterstützte Authentifizierungsmethode: COOKIE
2016-08-18 20:36:10 tor: Unterstützte Authentifizierungsmethode: SAFECOOKIE
2016-08-18 20:36:10 tor: Verwendet SAFECOOKIE-Authentifizierung, liest Cookie-Authentifizierung aus /var/run/tor/control.authcookie
2016-08-18 20:36:10 tor: SAFECOOKIE-Authentifizierungs-Challenge erfolgreich
2016-08-18 20:36:10 tor: AUTHCHALLENGE ServerHash af7da689d08a67d5b4e789a98c76a6eacbabaa32baefc223ab0d7b1f46c3d
2016-08-18 20:36:10 tor: Authentifizierung erfolgreich
2016-08-18 20:36:10 tor: ADD_ONION erfolgreich
2016-08-18 20:36:10 tor: Got service ID w4bh4cputinlptzm, advertising service w4bh4cputinlptzm.onion:8333
2016-08-18 20:36:10 tor: Gepufferter privater Schlüssel des Dienstes in /home/username/.bitcoin/onion_private_key
2016-08-18 20:36:10 AddLocal(w4bh4cputinlptzm.onion:8333,4)
Wenn Sie diesen Fehler sehen:
2016-08-18 19:51:48 tor: Add onion failed with unrecognized command
Dann haben Sie das deb-Repository von Tor nicht richtig konfiguriert und versehentlich tor aus dem veralteten Repository von Ubuntu installiert. Du musst “sudo apt-get remove tor” ausführen und das Repository neu konfigurieren, bevor du es erneut installierst.
Wenn Sie diesen Fehler sehen:
2016–08–18 20:01:28 tor: Error connecting to Tor control socket
2016–08–18 20:01:28 tor: Not connected to Tor control port 127.0.0.1:9051, trying to reconnect
Dann ist deine tor-service-defaults-torrc-Datei falsch konfiguriert oder du hast vergessen, den Daemon neu zu starten, damit die Änderungen wirksam werden.
Wenn Sie diesen Fehler sehen:
2016–08–18 20:11:10 tor: Authentication cookie /var/run/tor/control.authcookie could not be opened (check permissions)
Dann haben Sie den Linux-Benutzer, der bitcoind ausführt, nicht korrekt zur tor-Gruppe hinzugefügt. Stellen Sie außerdem sicher, dass Sie sich aus- und wieder einloggen, um sicherzustellen, dass Ihre aktuelle Shell-Sitzung die richtigen Gruppen gesetzt hat!
Ansonsten, wenn alles gut aussieht, besuchen Sie https://bitnodes.io/ und benutzen Sie das “check node”-Werkzeug, um sicherzugehen, dass es Verbindungen annimmt.
Wenn bitnodes in der Lage ist, eine Verbindung herzustellen, können Sie optional auf den grünen Link klicken, der für den Status Ihres Knotens erscheint, an das Ende der Statusseite Ihres Knotens scrollen und Ihre E-Mail-Adresse eingeben, um Benachrichtigungen zu erhalten, wenn bitnodes jemals Probleme hat, sich mit dem versteckten Dienst Ihres Knotens zu verbinden.
Vielen Dank, dass Sie einen versteckten Bitcoin-Dienst betreiben!