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.
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.gpgErstellen Sie eine neue Repository-Datei für Docker in Ihrer „/etc/apt/sources.list.d“:
sudo nano /etc/apt/sources.list.d/docker.listFü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 StableAktualisieren und aktualisieren Sie Ihr Ubuntu-System, indem Sie den folgenden Befehl ausführen:
sudo apt update && sudo apt upgradeInstallieren 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 npmFügen Sie abschließend Ihren aktuellen Benutzer zur Docker-Systemgruppe hinzu:
sudo usermod -aG docker ramcesNostream 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 ./nostreamFü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.yamlErsetzen 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.ymlScrollen 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/nostreamFü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-enabledTesten 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 neuSicheres 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 --classicRegistrieren Sie Ihre Certbot-Installation beim EFF, indem Sie den folgenden Befehl ausführen:
sudo certbot register --agree-tos -m you@your-email.invalidFordern Sie ein neues SSL-Zertifikat für Ihren Nostream-Reverse-Proxy an:
sudo certbot --nginx -d nostr.myvpsserver.topTesten 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