Fulcrum Installation auf Linux X86

Vorbereitung

In unserem Benutzerverzeichnis legen wir einen Ordner für die Fulcrum-Datenbank an

mkdir fulcrum_data

Fulcrum Download

Wir suchen das Github-Repository von Fulcrum - Releases · cculianu/Fulcrum · GitHub und laden die aktuellste Version von Fulcrum herunter.

Zuerst wechseln wir in unser Download-Verzeichnis

cd ~/Downloads

Und darin führen wir folgenden Befehl aus:

wget https://github.com/cculianu/Fulcrum/releases/download/v1.9.8/Fulcrum-1.9.8-x86_64-linux.tar.gz

Danach entpacken wir den Ordner

tar xvf Fulcrum-1.9.8-x86_64-linux.tar.gz

Selbst signiertes Zertifikat erstellen

Wir wechseln in unseren Fulcrum-Ordner

cd ~/Fulcrum-1.9.8-x86_64-linux

Um eine verschlüsselte Kommunikation zu ermöglichen, müssen wir ein selbst signiertes SSL-Zertifikat erstellen

openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout fulcrum.key.pem -out fulcrum.pem

Wir bestätigen alle Abfragen mit „Enter“

Konfiguration von Fulcrum

Als ersten Schritt müssen wir die Beispiel-Konfigurationsdatei von Fulcrum kopieren.

cp fulcrum-example-config.conf fulcrum.conf

Jetzt passen wir einige Parameter an

nano fulcrum.conf

Anpassen des Datenverzeichnisses

datadir = /path/to/a/dir  # Windows: datadir = D:\FulcrumData\mainnet

auf

datadir = /home/nakamoto/fulcrum_data

Anpassen des RPCUsers

rpcuser = Bob_The_Banker

auf

rpcuser = nakamoto

RPCPassword setzen

rpcpassword = hunter1

auf

rpcpassword = satoshi

Wir aktivieren SSL

#ssl = 0.0.0.0:50002

ändern in

ssl = 0.0.0.0:50002

Pfad für SSL-Zertifikat anpassen

#cert = /path/to/server-cert.pem

ändern in

cert = /home/nakamoto/fulcrum/fulcrum.pem

Key anpassen

#key = /path/to/server-key.pem

ändern in

key = /home/nakamoto/fulcrum/fulcrum.key.pem

Abstellen von Anfragen an andere Server nach ihrer Peer-Liste

#peering = true

ändern in

peering = false

Schnellere Syncronisierung aktivieren, dazu weiter nach unten scrollen

#fast-sync = 0

ändern in

fast-sync = 4096

Damit sind 4 GB RAM eingestellt.

Die Konfiguration ist damit fertig, wir speichern die Datei.

STRG +x, y und Enter

Nachdem alles konfiguriert ist, verschieben wir den fertigen Fulcrum-Ordner in unser Benutzer-Hauptverzeichnis

mv Fulcrum-1.9.8-x86_64-linux ../

Fulcrum Life Hack

Damit wir leichter updaten können und im Notfall nach einem fehlgeschlagenen Update wieder auf die ältere Fulcrum-Version zurrückspringen können, erstellen wir nun einen Link. Wir stellen sicher, dass wir in unserem Benutzerverzeichnis sind.

cd ~/
ln -sf Fulcrum-1.9.8-x86_64-linux fulcrum

Wenn wir jetzt das Verzeichnis ansehen, sollten wir folgendes sehen:

ls -la
fulcrum -> Fulcrum-1.9.8-x86_64-linux

Fulcrum als Service einrichten

Wir erstellen eine Service-Datei für Fulcrum:

sudo nano /etc/systemd/system/fulcrum.service

In diese Datei kopieren wir:

[Unit]
Description=Fulcrum
After=network.target

[Service]
ExecStart=/home/nakamoto/fulcrum/Fulcrum /home/nakamoto/fulcrum/fulcrum.conf
User=nakamoto
LimitNOFILE=8192
TimeoutStopSec=30min

[Install]
WantedBy=multi-user.target

STRG + x,y und ENTER

Datei ist gespeichert.

Jetzt aktivieren wir die Service-Datei.

sudo systemctl enable fulcrum.service

Und starten das Service

sudo systemctl start fulcrum.service

Check ob alles läuft

journalctl -fu fulcrum

Die Syncronisation dauert um die 12 Stunden. Sobald man im Logfile „Starting listener serivce for SslSrv 0.0.0.0:50002“ sieht, ist alles fertig.

Zusatzinfo für manche Wallets

Manche Wallets wie die Phoenix Wallet brauchen auch das Port 50001. Dazu gehen wir diese Schritte durch

cd ~/fulcrum

Wir editieren die fulcrum.conf Datei

nano fulcrum.conf

Wir suchen diesen Parameter

#tcp = 0.0.0.0:50001

Und ändern diesen in

tcp = 0.0.0.0:50001

Mit STRG +X +Y Enter speichern wir alles ab und restarten Fulcrum.

sudo systemctl restart fulcrum

Tor Anbindung

Um unseren Fulcrum Server über Tor erreichbar zu machen, müssen wir die Tor Config editieren

sudo nano /etc/tor/torrc

Wir fügen Folgendes am Ende der Config ein

# Hidden Service Fulcrum
HiddenServiceDir /var/lib/tor/fulcrum/
HiddenServiceVersion 3
HiddenServicePort 50001 127.0.0.1:50001

Jetzt müssen wir die Configuration in Tor neu einlesen

sudo systemctl reload tor

Die onion-Adresse für Fulcrum finden wir so:

sudo cat /var/lib/tor/fulcrum/hostname

Ab jetzt ist unser Fulcrum Server auch über Tor erreichbar über:

[sudo cat /var/lib/tor/fulcrum/hostname](http://XXXXX.onion:50001)

Upgrade

Wir stoppen das Fulcrum-Service

sudo systemctl stop fulcrum.service

Wir wechseln in unser Download-Verzeichnis

cd ~/Downloads

Wir laden uns die aktuellste Version von Fulcrum herunter und führen alle Schritte wie in Schritt 1 beschrieben durch.

Sicherung der Konfigurationsdatei und des Zertifikates mit Schlüssel

Wir wechseln in den Ordner mit der aktuellen Fulcrum Version

cd Fulcrum-aktuelle-Version

Und kopieren uns die Dateien

cp ../Fulcrum-alte-Version/*.pem .
cp ../Fulcrum-alte-Version/fulcrum.conf .

Wir wechseln wieder aus dem Ordner.

cd ~/

Und stellen die aktuelle Version ein.

Jetzt löschen wir unseren Link (Punkt Fulcrum Hack)

rm -rf fulcrum

Und setzen den Link auf die aktuelle Fulcrum Version

ln -sf Fulcrum-aktuelle-Version fulcrum

Starten von Fulcrum

sudo systemctl start fulcrum.service

Check ob alles okay ist

journalctl -fu fulcrum.service

Der Dienst sollte wieder syncronisieren.

Falls es Probleme gibt, kann man jetzt wieder easy zurücksteigen, indem man den Link zur aktuellen Version löscht und wieder auf die alte Version setzt.