Fullnode + Lightningnode auf Virt. Maschine beim Hoster

He Jungs und Mädels,

ich wollte mal fix was in die Runde fragen… (Hab auch in Discord geschrieben)

Aus gegebenen Anlass (siehe Bluewallet), wollte ich mir gern wieder ne Bitcoin - Fullnode inkl. Lightning - Anbindung zusammen bauen.
Da wir aber sehr viel reisen, kommt für mich ein Rasperry Pie Lösung nicht mehr in frage. (Die jetzige Lösung (raspiblitz) war in den letzten 2 Jahre quasi ständig offline)

Da wäre jetzt meine Idee gewesen, da ich sowieso einige dedicated Server bei diversen Hostern laufen habe. Doch einfach da eine virtuelle Lösung zusammen zu bauen. Die Ressourcen sind da und bezahlt. Also warum nicht nutzen… Das hat auch den Vorteil dass die Node hoch verfügbar ist. Könnte mir auch vorstellen den Fokus später auf Routing zu legen.

Nun stellen sich mir folgende Fragen:

  1. Was spricht dafür oder dagegen?
  2. Welche Lösungen gibt es (Umbrel, etc) → Welches wäre die Beste, komfortabelste und/oder Sicherste?
  3. Gibts es sonst noch was zu beachten?

Ich hoffe die Frage kommt nicht zu häufig… Aber Antworten ändern sich mit der Zeit ja sowieso und da dachte ich mir, ich frage einfach mal.

Danke im Voraus.

Viele Grüße

Spricht meiner Meinung nach nichts gegen und hat bei mir und anderen wunderbar funktioniert.
Hier ist eine Anleitung für eine VM auf einem Proxmox Server. Wenn du nur dem unteren Teil „Raspiblitz installieren“ folgst, solltest du den Raspiblitz auf jeder beliebigen VM installieren können.
Wichtiger Hinweis noch. Die Wiederherstellung der Daten ist bei VMs so eine Sache. Daher sieh zu, dass du rglm. Backups von deiner Lightning Node machst!

2 „Gefällt mir“

Es gilt zu bedenken, dass der Hosting-Anbieter im Zweifel die Kontrolle über die Hardware hat und theoretisch ohne Weiteres die privaten Schlüssel deiner Lightning-Node einsehen kann. Die Frage ist nun, in wie weit du dem Hosting-Anbieter vertraust, dies 1. nicht selbst zu missbrauchen und 2. gut vor dem Missbrauch durch andere zu schützen. Ich persönlich würde die Schlüssel für zumindest größere Beträge nur auf Hardware halten, die auch physisch in meinem Besitz ist – aber es bleibt natürlich deine persönliche Abwägung.

Wenn es sich um einen virtuellen Server handelt, der auf gemeinsamer Hardware mit virtuellen Servern anderer Kunden läuft, muss man außerdem bedenken, dass es diesen anderen Kunden potentiell möglich sein könnte, durch irgendwelche Seitenkanalangriffe deine Schlüssel beispielsweise aus dem CPU-Cache auszulesen. Die Spectre-Sicherheitslücke hat gezeigt, dass so etwas prinzipiell möglich ist. Ist vielleicht nun etwas sehr theoretisch, sollte nur nicht unerwähnt bleiben.

2 „Gefällt mir“

He Blue Ballroom,

sehr interessant super danke…
Hab tatsächlich auf einigen Servern Proxmox laufen.
Das würde sich ja dann quasi fast aufdrängen. :smiley:

Ist Raspiblitz den immer noch the way to go, oder nimmt man heute mitlerweile was anderes?
Ich meine das ich mich mal erinnern kann das Roman aka @Blocktrainer mal in einen seiner Videos gesagt hat, dass Raspiblitz nicht mehr sooo gut sein soll. Und das es besser Lösungen gibt. Aber weiss net mehr genau wann und wie das war, oder wie der genaue Zusammenhang war.

Mir gehts drum wenn ich den jetzt schon neu aufsetze, soll der schon paar Jahre laufen und auch score aufbauen, falls ich mich entscheide Routing zu machen, was aber doof wäre, nicht zu tun. ^^

Viele Grüße

Hallo Sypher,

ja ich teile seine Bedenken. Und kenne die Problematik sehr gut, da ich selber Informatiker bin.
Aber ich habe da nicht so wirklich eine Wahl, da wir wie oben bereits beschrieben ständig unterwegs sind und sich unser Wohnsitz somit auch ständig ändert. Und das wird auch die nächsten 1-2 Jahre so bleiben.

Was den zweiten Punkt angeht… nee nee, ich würde sowas nie auf ner virtuellen Maschine, auf geteilter Hardware machen. Das soll in einer Virtuellen Maschine/Container auf einen meiner eigenen dedicated Servern laufen.

Und wie weit die node nachher aufgeladen wird, hängt davon ab wie sich die ersten Monate entwickeln. Zum Beispiel würde ich mir erstmal regelmäßig die Logs usw. anschauen um mir mal mal ein Bild machen, wie viel „bad load“ kommt wirklich drauf. Und halt noch andere Kram…

Aber Primäre wäre es „erstmal“ also node für meine persönliche Node-Anbindung meiner Bluewallet.

Viele Grüße

Als Informatiker wirst du Nutzen und Risiko in diesem Fall sicher kompetent gegeneinander abwägen können. Wenn es ohnehin erstmal nicht um große Beträge geht, muss man sich vielleicht keinen solches Kopfzerbrechen bereiten.

Als Anregung, die in deinem Fall interessant sein könnte, kann ich noch auf das VLS-Projekt verweisen: https://vls.tech/ Hierbei wird die Verwaltung der privaten Schlüssel von der restlichen Node-Software getrennt. Ein VLS könnte beispielsweise auf einem RPi in deinem physischen Besitz mit mobiler Internetanbindung laufen, während der schnelle und breitbandig angebundene Remote Server den Rest übernimmt und nur Transaktionen zum Signieren an den ersteren schickt.

1 „Gefällt mir“

Auf so einer Fullnode bei einem Hoster soll dann auch die ganze Blocklchain gesynct sein oder? Wenn es unbedingt eine SSD Festplatte sein muss wird es aber etwas kostspielig. Bei Minimum 1 TB SSD ist dann auch schon der ganze Server überdimensioniert und es wird richtig teuer. Gibt es nicht einen Anbieter wo man auch kleineren Servern optional eine 1 TB SSD hinzubuchen kann?

Beispielsweise bei Hetzner kommt man mit einem 1 TB SSD auf mindestens etwa 70€ im Monat. Das ist zu viel wenn man mit der Node kein Geld verdient.

1 „Gefällt mir“

Mega interessanter Ansatz! Ich werde ihn definitiv langfristig berücksichtigen. Im Moment müsste ich jedoch einen Raspberry Pi mit einem Akku ausstatten, da wir viel reisen. Das bedeutet wiederum mehr Gewicht und vor allem mehr Stress, wenn sich der Akku dem Ende neigt. ^^ Es wäre gut, den maximalen Verbrauch des Raspberry Pi zu berechnen und zu überlegen, welche Akkugröße erforderlich ist. Leider würde der Empfang im Flugzeug fehlen.

Dennoch ist das Konzept sehr cool und ich werde darüber nachdenken.

1 „Gefällt mir“

He DeTec,

Ja, die gesamte Blockchain soll natürlich mit darauf sein und die Node wird auf einer virtuellen Maschine auf einem eigenen dedizierten Server laufen.

Ich habe auch über eine SSD nachgedacht, aber ich frage mich, warum eine SSD? Wenn man beispielsweise eine Ethereum-Node oder BnB mit einer Blockzeit von 3 Sekunden installiert und schnell unterwegs sein möchte, um beispielsweise Frontrunning zu betreiben, verstehe ich das. Aber warum bei Bitcoin mit einer Blockzeit von 10 Minuten?

Meine ersten Bitcoin-Nodes hatte ich damals auch auf normalen Festplatten, zwar ohne Lightning, aber es lief dennoch…

Ich werde es einfach mal ausprobieren und berichten. :slight_smile:

Ob man die Node mit oder ohne TOR betreiben sollte, ist jetzt die Frage… Ich habe noch genug IP-Adressen im Pool. ^^

Viele Grüße

Das frage ich mich auch. In welchen Szenarien lohnt sich eine schnellere SSD wirklich? Ich habe die Blockchain auf meinem PC bereits auf eine HDD gesynct. Dabei konnte ich keine Probleme feststellen. Gerade über Tor kommen in der Regel keine großen Datenströme rein. Dementsprechend hat die Festplatte wenig zu tun.

Für den Heimbetrieb kommen noch Faktoren wie der höhere Stromverbrauch und die Geräuschkulisse einer HDD hinzu. Was bei einem gehosteten Server ja kein Thema ist.

Theoretisch kann man auch 2x 500 GB SSD Festplatten zu einem virtuellen Laufwerk zusammenschalten. Einen solchen Rootserver gibt es bei Server4You für 44€. Oder mit 2x 2 TB HDD für 34€. Wenn es ein noch günstigerer vServer sein soll dann scheinen die Angebote von Strato ziemlich gut zu sein. Habe ich gerade gesehen. 1 TB SSD (32 GB RAM, 8 CPU vCore) für 17€. Theoretisch reichen aktuell aber auch 700 GB für die Blockchain aus. Dann wäre der vServer mit 700 GB SSD (8 GB RAM, 6 CPU vCore) für nur 10€ im Monat was. Frag mich aber nicht nach Qualität und Ausfallsicherheit. Habe keine Erfahrungen mit den Anbietern. Aber 10€ erscheinen mir unschlagbar günstig für Hobby Ansprüche.

Ja, meine Gedanken gehen in eine ähnliche Richtung. Ich werde ein paar Dinge ausprobieren: (bei Hetzner)

  1. Ich werde eine virtuelle Maschine auf einem eigenen dedizierten Server einrichten und eine „lokale“ Installationspartition verwenden.
  2. Ich werde die Blockchain auf einem über SMB/CIFS eingebundenen Laufwerk auf einer Storagebox speichern.

Angeblich ist die Storagebox mit einer 10-Gbit/s-Verbindung angebunden und based auch SSD-Laufwerke.

Sobald ich diese Schritte getestet habe, werde ich hier über meine Erfahrungen berichten.

Allerdings finde ich es schade, dass bis jetzt niemand hier ist, der schon einmal eine Node professionell eingerichtet hat oder bereit ist, Informationen darüber zu teilen, welche Pakete „beste practice“ wären, um die bestmögliche Sicherheit und Leistung zu erzielen.

Naja, vielleicht kommt das ja noch…

1 „Gefällt mir“

Ich hab bei hetzner ein BTC core + lnd laufen. Key gebe ich nur bei lncli unlock auf der Shell an. Läuft ok seit ca. 12 Monaten mit etwa 1 BTC liqui.

He RayEsko,

Kannst du mal dein Setup beschreiben?

Also was nutzt du:

  1. an Hardware bzw. Virtuell.
  2. welchen Speicher nutzt du für die Blockchain
  3. benutzt du irgend ein Paket dafür die Umbrel oder so

Und hast du noch irgendwelche tips?
Hast du irgendwas besonders abgesichert?
Wie Backupst du deine Channel?

Danke dir im Voraus!

Viele Grüße

Klar gern.

  1. Root Server I9-9900 mit Ubuntu minimal
  2. 2TB SSD
  3. Plain Bitcoin core, lnd und Tor

Zwecks reporting und Admin hab ich mir paar Python Scripts geschrieben.

Nervig an dem Setup ist, dass ich dauernd (alle paar Monate) lnd updaten muss :grinning:

Lnd und BTC Software gibt’s auf GitHub zum selber kompilieren.

Ist natürlich alles nicht so einfach, aber ich traue halt niemandem …

Vg

Edit: Backup pushe ich mit SSH nach Hause. Mehr Security ist nicht nötig weil ich den Key nirgends speichere. Ok, ist auch etwas nervig weil ich die und Wallet nach dem reboot unlockeen muss.

Wie viel kostet dich dein Setup im Monat?

Du vertraust Hetzner :smiley:

Ich finde man stochert im Dunkeln wenn man die Hardware auswählt. Mich würde auch interessieren wie viele Lightning Transaktionen pro Sekunde mit einem Fullnode hinter Tor und im Clearnet möglich sind.

Wie könnte ich das am besten selbst testen? Ein anderen Fullnode aufsetzen und damit mit einem Script hunderte Transaktionen an die zu testende Node senden?

Das läuft bei anderem Kram mit. Der Server kostet ca 60 pM - was könnte hetzner mir tun?

Hast du es inzwischen einrichten können?

Sie könnten theoretisch dein Hotwallet leerräumen.
Oder über dein Wallet „böse“ Transaktionen abwickeln.
Oder deine Chain manipulieren und dir falsche Daten vorgaukeln.

Die Gefahr ist gering, aber vorhanden.

Niemandem, außer deinem Hoster :slight_smile:

Aber gut, zu Hause gibt es auch die Möglichkeit, dass sich der Internetprovider per Fernwartung auf den Router einloggt und sich dann im Netzwerk umsehen kann.

An irgendeinem Punkt muss man anfangen, zu vertrauen.
Sonst müsste man die Hardware auch selbst entwickeln und produzieren, sein eigener Internetprovider werden, nicht per Bitcoin bezahlen… (Man muss ja quasi drauf vertrauen, dass die Gegenseite das Bestellte auch liefert, wenn per Bitcoin „Vorkasse“ eingekauft wird :D)

Wie soll das gehen? Der Hoster hat kein Passwort, die Platte ist verschlüsselt, der Tor Traffic ist verschlüsselt. Die Wallet wird manuell entsperrt. Das BS ist Linux.