So installieren Sie ein Nostr-Relay unter Linux

Nostr ist ein innovatives Protokoll, das eine dezentrale Social-Media-Plattform schafft, die sowohl leichtgewichtig als auch flexibel ist. Damit dies funktioniert, verlässt sich das Nostr-Netzwerk auf einfache Knoten-Relays, um verschlüsselte Nachrichten an die vorgesehenen Empfänger zu übermitteln. Hier führen wir Sie durch den Prozess der Erstellung eines Nostr Relay-Knotens mit Nostream unter Ubuntu. Wir zeigen Ihnen auch, wie Sie sowohl auf Gossip- als auch auf Amethyst-Clients eine Verbindung zu Ihrem neuen Knoten herstellen.

Index
  1. Warum Nostream verwenden?
  2. Nostream installieren
    1. Beziehen von Docker und Docker Compose
    2. Nostream beziehen und installieren
  3. Öffentlicher Zugriff auf Nostream
    1. Sicheres Nostream mit SSL-Zertifikat
  4. Verknüpfung von nostream mit dem Gossip Nostr Client
    1. Verknüpfung von nostream mit dem Amethyst Nostr Client

Warum Nostream verwenden?

Kein Strom ist ein Nostr-Relay, geschrieben in Typescript. Der Hauptvorteil der Verwendung von nostream besteht darin, dass Sie damit die Kontrolle über Ihre Social-Media-Daten haben. Ähnlich wie bei Pleroma bedeutet das Hosten Ihres eigenen Nostr-Relay-Knotens, dass Sie Eigentümer Ihrer Plattform und Daten sind, während Sie diese über das Netzwerk übertragen.

Darüber hinaus unterstützt Nostream eine vollständig Docker-Installation. Dies bedeutet, dass Sie es problemlos auf jedem vorhandenen Server-Stack bereitstellen können.

Nostream installieren

Beziehen von Docker und Docker Compose

Annahme: In diesem Artikel wird davon ausgegangen, dass Sie über einen VPS mit mindestens 8 GB RAM sowie einen Domänennamen mit einem A- und PTR-Eintrag verfügen, der auf die IP-Adresse Ihres Servers verweist. Es wird außerdem davon ausgegangen, dass Sie bereits über ein Nostr-Konto mit einem funktionierenden Schlüsselpaar verfügen.

Rufen Sie zunächst den Signaturschlüssel für das Binärpaket-Repository des Docker-Projekts ab:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg |  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg

Erstellen Sie eine neue Repository-Datei für Docker in Ihrer „/etc/apt/sources.list.d“:

sudo nano /etc/apt/sources.list.d/docker.list

Fügen Sie den folgenden Codeblock in Ihre neue Repository-Datei ein und speichern Sie ihn:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu Jammy Stable

Aktualisieren und aktualisieren Sie Ihr Ubuntu-System, indem Sie den folgenden Befehl ausführen:

sudo apt update && sudo apt upgrade

Installieren Sie die Docker-Binärdatei zusammen mit dem Docker Compose-Plugin und den Abhängigkeiten:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git nodejs npm

Fügen Sie abschließend Ihren aktuellen Benutzer zur Docker-Systemgruppe hinzu:

sudo usermod -aG docker ramces

Nostream beziehen und installieren

Rufen Sie das Git-Repository für Nostream ab und gehen Sie in den Repository-Ordner:

Git-Klon https://github.com/Cameri/nostream.git && cd ./nostream

Führen Sie das Nostream-Bootstrap-Skript aus, um den Nostream-Server-Daemon zu erstellen und als Docker-Container auf Ihrem System bereitzustellen:

Warten Sie, bis der Nostream-Docker-Container das „nostream“-Logo druckt, und drücken Sie dann Strg + C.

Öffnen Sie die Konfigurationsdatei für Ihre Nostream-Instanz mit Ihrem bevorzugten Texteditor:

nano ./.nostr/settings.yaml

Ersetzen Sie den Wert von Relay_URL: Und Name: Variable mit dem Domänennamen Ihrer Instanz.

Ersetzen Sie den Wert von Pubkey: Variable mit dem öffentlichen Schlüssel Ihres primären Nostr-Kontos.

Ändern Sie die E-Mail-Adresse auf der Kontakt: Variable mit einer funktionierenden Variable, die Sie gerade verwenden.

Öffnen Sie die Datei „docker-compose.yml“ Ihrer Instanz:

nano ./docker-compose.yml

Scrollen Sie zur Kategorie „Umgebung:“ und ersetzen Sie dann den Wert der Umgebungsvariablen „SECRET:“ durch eine zufällige Zeichenfolge.

Notiz: Sie können den folgenden Befehl ausführen, um eine zufällige Zeichenfolge zu generieren: cat /dev/urandom | tr -dc 'A-Za-z0-9' | falten -w 64 | Kopf -n 1

Starten Sie abschließend Ihre Nostream-Instanz neu:

Öffentlicher Zugriff auf Nostream

Um über Ihren Domainnamen auf nostream zugreifen zu können, müssen wir einen Nginx-Reverse-Proxy erstellen, um den Datenverkehr an die Docker-Instanz weiterzuleiten.

Erstellen Sie eine neue Site-Konfigurationsdatei für Ihre Nostream-Instanz:

sudo nano /etc/nginx/sites-available/nostream

Fügen Sie den folgenden Codeblock in Ihre neue Site-Konfigurationsdatei ein:

server { Servername nostr.myvpsserver.top;  Standort / { Proxy_pass http://127.0.0.1:8008;  Proxy_http_version 1.1;  Proxy_set_header Upgrade $http_upgrade;  Proxy_set_header Verbindung „upgrade“;  Proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  Proxy_set_header Host $host;  } }

Erstellen Sie einen symbolischen Link für Ihre neue Site-Konfigurationsdatei in „/etc/nginx/sites-enabled/“:

sudo ln -s /etc/nginx/sites-available/nostream /etc/nginx/sites-enabled

Testen Sie die Einstellungen Ihres Nginx:

Wenn alles in Ordnung ist, übernehmen Sie Ihre neuen Einstellungen, indem Sie Ihren Nginx-Server-Daemon neu starten:

sudo systemctl startet Nginx neu

Sicheres Nostream mit SSL-Zertifikat

Stellen Sie sicher, dass das Kern-Snap-Paket auf Ihrem VPS ausgeführt wird:

Installieren Sie das Certbot-Snap-Paket von der Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Registrieren Sie Ihre Certbot-Installation beim EFF, indem Sie den folgenden Befehl ausführen:

sudo certbot register --agree-tos -m you@your-email.invalid

Fordern Sie ein neues SSL-Zertifikat für Ihren Nostream-Reverse-Proxy an:

sudo certbot --nginx -d nostr.myvpsserver.top

Testen Sie, ob Ihr neues Nostream-Relay funktioniert, indem Sie einen Webbrowser öffnen und zu seiner Webadresse navigieren.

Verknüpfung von nostream mit dem Gossip Nostr Client

Um Ihr neues Nostream-Relay mit Gossip zu verknüpfen, klicken Sie in der linken Seitenleiste des Programms auf die Kategorie „Relays“.

Drücke den Relais hinzufügen Klicken Sie auf die Schaltfläche unter der Kategorie „Relais“.

Dadurch wird ein kleines Textfeld angezeigt, in das Sie die Adresse Ihrer Nostream-Instanz eingeben können. Geben Sie die Adresse Ihres neuen Relays zusammen mit dem WebSocket-Protokollheader „wss://“ an.

Klicken Sie auf „Prüfen“ und anschließend auf „Konfigurieren“, um Ihr neues Relais einzurichten.

Gossip lädt dann eine Einstellungsseite, auf der Sie festlegen können, wie sich Ihr neues Relay bei Ihrem Client verhält. Um Nachrichten von Ihrer Instanz zu senden und zu empfangen, schalten Sie die Schalter „Lesen“ und „Schreiben“ auf der Einstellungsseite um.

Schalten Sie die Schalter „Posteingang“, „Postausgang“ und „Werbung“ um, um mit anderen Relays zu kommunizieren.

Testen Sie, ob Ihr Relais ordnungsgemäß funktioniert, indem Sie eine neue Nostr-Notiz senden.

Verknüpfung von nostream mit dem Amethyst Nostr Client

Neben Gossip können Sie Ihre neue Nostream-Instanz auch mit anderen Nostr-Clients wie Amethyst verknüpfen. Klicken Sie dazu in der oberen linken Ecke der App auf Ihr Benutzersymbol.

Klicken Sie in der Popup-Seitenleiste auf die Option „Relays“.

Wählen Sie das Textfeld „Relais hinzufügen“ aus und geben Sie dann die Adresse Ihres neuen Relais ohne Protokoll-Header ein.

Klicken Sie auf „Hinzufügen“, um Ihre neue Nostream-Instanz auf Ihren Client anzuwenden.

Testen Sie, ob Ihre neue Instanz Nachrichten ordnungsgemäß weiterleitet, indem Sie eine Nostr-Beispielnotiz senden.

Das Hosten eines Nostr-Relays ist nur eine Möglichkeit, die Kontrolle über Ihr digitales Leben zurückzugewinnen. Neben Ihrer eigenen Social-Media-Plattform können Sie mit ownCloud auch eine Cloud-Office-Plattform bereitstellen und über Peertube Ihre eigene Video-Hosting-Website hosten.

Paulina Chmolowska über Unsplash. Alle Änderungen und Screenshots von Ramces Red.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Go up