Bitmessage - Tor in und Tor out (hidden service)

Rain_Maker

Administrator
Teammitglied
Seit kurzem unterstützt Bitmessage die Verwendung eines Tor hidden services für eingehende Verbindungen.

Zur (lokalen) Installation habe ich mich hier schon geäussert

Digitale Selbstverteidigung (nicht nur) für Paranoiker

Allerdings empfehle ich zumindest zur Zeit noch die Verwendung des "v0.6" Zweiges (in git-speak "branch"), da dort schon einige Verbesserungen eingeflossen sind, die sich im "master" Zweig noch nicht finden.

Nach dem Auschecken/Aktualisieren des Quellcodes mit git (clone/pull) sollte man also noch das hier (logischerweise im Verzeichnis der Quellen) ausführen:

Code:
git checkout v0.6
Gewechselt zu Branch 'v0.6'

git pull
Danach mit der Installation/Aktualisierung fortfahren, wie im oben verlinkten Beitrag beschrieben.

Abschliessend (optional) einmal pybitmessage starten und wieder beenden (dies fügt einige der Optionen, die später konfiguriert werden müssen, schon mal in die keys.dat ein ohne sie zu aktivieren).

Um Tor für eingehende Verbindungen über einen hidden service zu nutzen, müssen nun folgende Einstellungen gemacht werden.

1) Tor konfigurieren (hidden service hinzufügen)

In der torrc muss ein neuer hidden service angelegt werden, wer die Pakete für openSUSE verwendet, kann seine /etc/tor/torrc wie folgt bearbeiten.

Code:
## bitmessage
HiddenServiceDir /var/lib/tor/bitmessage_hidden_service
HiddenServicePort 8444 127.0.0.1:8444
Der Pfad "/var/lib/tor" ist Standardpfad für hidden services sofern man die openSUSE-Pakete verwendet, Nutzer anderer Distributionen sollten hier nachsehen, ob das auch für ihre Distro gilt.

Danach Tor neustarten

Code:
systemctl restart tor.service
und nachsehen, ob nun der Pfad "/var/lib/tor/bitmessage_hidden_service" existiert.

Falls ja, sollten sich dort zwei Dateien befinden, eine Datei "hostname" und eine Datei "private_key".

2) Bitmessage konfigurieren

Zunächst benötigt man den Inhalt der "hostname"-Datei des eben angelegten hidden service, dieser sieht ungefähr so aus

Code:
0123456789abcdef.onion
also eine 16-stellige Folge aus zufälligen Zeichen und der Endung ".onion".

Eine Konfigurationsoption mit der Pybitmessage GUI gibt es zur Zeit noch nicht, man muss also selbst mit dem Editor seiner Wahl Hand anlegen.

- zuerst Pybitmessage beenden

- Konfiguratuionsdatei "keys.dat" mit einem Texteditor öffnen, je nach Betriebsmodus findet man sie entweder im Verzeichnis

$HOME/.config/PyBitmessage (Standardmodus)

oder im Verzeichnis der Programmdateien selbst (portabler Modus), siehe die oben verlinkte Installationsanleitung.

Folgende Optionen sollten nun im Abschnitt "bitmessagesettings" gesetzt/geändert werden:

Code:
port = 8444
socksproxytype = SOCKS4a # hier würde auch SOCKS5 funktionieren
sockshostname = localhost
socksport = 9050
sockslisten = False
onionport = 8444
onionbindip = 127.0.0.1
onionhostname = 0123456789abcdef.onion
Unter "onionhostname" muss natürlich die Zeichenkette eingetragen werden, die dem eigenen hidden service aus Punkt 1) entspricht (oder kurz gesagt, Hirn einschalten und nicht alles blind Kopieren und Einfügen, danke für Ihre Aufmerksamkeit).

Die Werte für "sockshostname", "socksport" müssen natürlich zur eigenen Tor-Installation passen, die hier eingetragenen Werte entsprechen den Standardwerten des openSUSE-Pakets.

Wer das Tor Browser Bundle verwendet, muss wahrscheinlich den Wert für "socksport" auf 9150 ändern.

Danach sollte PyBitmessage in einem "Tor-Out/Tor-In"-Modus laufen.

Hinweis:

PyBitmessage zeigt seinen Netzwerkstatus im Systray-icon durch einen roten (nicht Verbunden), gelben (Verbunden aber keine eingehenden Anfragen möglich) und grün (Verbunden, ein- und ausgehende Verbindungen möglich) an.
Es kann durchaus eine Weile dauern, bis man "grünes Licht" erhält, vor allem auch, weil es zur Zeit (logischerweise) noch nicht allzu viele Nodes gibt, die einen Tor hidden service für eingehende Verbindungen verwenden und nur diese können auch eingehenden Traffic an den eigenen hidden service senden, da das "normale" Internet von diesen hidden services nichts wissen kann/soll, was ja auch die Idee der hidden services ist.

Weiterer Lesestoff und vor allem auch eine Zusammenfassung der Konfigurationsoptionen findet sich im Bitmessage Wiki

https://bitmessage.org/wiki/FAQ#How_do_I_setup_Bitmessage_as_a_hidden_service_on_Tor

Greetz,

RM
 
Oben