Häufige Fragen
Kurze Antworten zum Betrieb von nostrfy. Alles unten ist in die Dokumentation verlinkt — und wenn Sie möchten, können Sie es mit strfry vergleichen.
Was ist nostrfy?
nostrfy ist eine All-in-One-Nostr-Relay-Server-Engine in Rust. Sie speichert Events von Nostr-Clients und liefert sie auf Abonnements hin aus — mit allen Relay-seitigen NIPs plus optionalem Blossom-Mediaserver, schreibgeschützter REST-API und NIP-86-Verwaltungs-API, alles in einem Binary.
Ist nostrfy kostenlos und quelloffen?
Ja. nostrfy ist freie Software, dual lizenziert unter MIT oder Apache-2.0, nach Ihrer Wahl. Der Quellcode liegt auf GitHub, ohne Bezahlstufen, Telemetrie oder Lock-in.
Was brauche ich, um nostrfy zu betreiben?
Ein einzelnes statisches Binary läuft auf Linux (x86_64 und aarch64) und FreeBSD (x86_64). Es wurde auf einem VPS mit 0,25 vCPU / 512 MB verifiziert. Der Speicher ist eine lokale LMDB-Datenbank — ein externer Datenbankserver ist nicht nötig.
Wie installiere ich nostrfy?
Eine Zeile: curl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | sh. Das Skript erkennt Ihr Betriebssystem und Ihre Architektur, lädt das passende vorgebaute Binary, verifiziert dessen Prüfsumme und legt es in den PATH. Alternativ können Sie mit Cargo aus dem Quellcode bauen oder eine fertige Konfigurationsvorlage kopieren.
Wie wird nostrfy konfiguriert?
Alles liegt in einer vollständig kommentierten nostrfy.toml — Relay-Identität, Limits, Speicher, Zugriffskontrolle, Blossom und RPC. nostrfy check validiert sie vor dem Start, und die meisten Einstellungen werden bei SIGHUP ohne Neustart neu geladen.
Welche NIPs unterstützt nostrfy?
nostrfy implementiert 36 NIPs, darunter NIP-01, NIP-09-Löschung, NIP-29-Gruppen, NIP-42-Authentifizierung, NIP-50-Suche, NIP-57-Zaps, NIP-59-Gift-Wrap, NIP-65-Relay-Listen, NIP-77-Negentropy, NIP-86-Verwaltung und NIP-98-HTTP-Authentifizierung. Die supported_nips-Liste in NIP-11 ist dynamisch: Ein NIP verschwindet, wenn die benötigten Kinds blockiert oder deaktiviert werden.
Hostet nostrfy Mediendateien?
Ja. Der eingebaute Blossom-Dateiserver hostet inhaltsadressierte Uploads unter eigenem Hostnamen — auf lokaler Festplatte oder in einem S3-kompatiblen Bucket wie AWS S3 oder Cloudflare R2. Uploads werden mit signierten Kind-24242-Events autorisiert und können auf eine Allowlist beschränkt werden.
Kann ich von strfry migrieren?
Ja. nostrfy migrate-strfry importiert eine strfry-Datenbank oder einen JSONL-Export direkt, wendet Replaceable-/Addressable-Semantik, NIP-09-Löschungen und NIP-29-Moderationsnebenwirkungen an und kann passende strfry-Einstellungen in nostrfy.toml übernehmen. Die Migration ist offline, dry-run-fähig und sicher wiederholbar.
Läuft nostrfy hinter einem Reverse-Proxy oder Cloudflare?
Ja. Konfigurieren Sie server.trusted_proxies mit den Proxy-Adressen (Loopback für nginx oder Caddy auf demselben Host, der Bereich des Load Balancers in der Cloud), damit IP-Limits, blockip und Logs die echte Client-Adresse sehen. TLS wird vom Proxy oder Tunnel beendet; nostrfy dahinter bietet normales HTTP und WebSocket.
Hat nostrfy eine REST-API?
Ja — ein schreibgeschütztes /api/v1 auf demselben Port wie das WebSocket-Relay, in einem eigenen Reader-Thread, sodass REST-Verkehr Abonnenten nie blockiert. Es fragt Events per npub, nevent oder naddr ab und bietet Zähler, Autorenstatistiken, Tages-/Monatsaufschlüsselungen und Volltextsuche.
Wie bleibt nostrfy unter Last oder Missbrauch online?
Überlastschutz, dedizierte Reader-Threads, Panic-Isolierung und strikte Ressourcengrenzen. Begrenzte Warteschlangen schlagen schnell fehl, statt den Speicher zu erschöpfen; Verbindungslimits pro IP stoppen Socket-Floods, und eine hängende Festplatte blockiert das Lesen nicht. Subsysteme sind isoliert, das Relay läuft weiter.
Wie verwalte ich Nutzer, Bans und Rollen?
Über die NIP-86-JSON-RPC-Verwaltungs-API mit Bearer-Token oder NIP-98-Admin-Schlüssel: Pubkeys bannen, IPs blockieren, Kind-Allowlists, Rollen und Einladungscodes verwalten. Method-Grants erlauben die Delegation der Moderation an andere Pubkeys, ohne vollständige Admin-Rechte.