Sichtbarkeit wählen: offen, verborgen, unsichtbar
Eine Adresse heißt nicht, dass dort eine Anmeldeseite steht. Drei Stufen, jederzeit umschaltbar.
Das brauchst du: einen Crew-Server. Das hast du am Ende: genau so viel offen, wie du willst — geprüft von außen. Dauer: 2 Minuten.
| Offen | Verborgen (Empfehlung) | Unsichtbar | |
|---|---|---|---|
| Was ein Fremder sieht | Anmeldeseite von Crew | leere Seite (404), unter /relay ein Relay, der ihn nichts schreiben lässt | nichts, Port geschlossen |
| Apps | direkt per HTTPS | über den verschlüsselten Relay | über einen Relay an anderer Stelle |
| Browser | ja | über die Apps (Browser-Zugang folgt) | über die Apps |
| Webhooks | ja | einzeln freischaltbar | nein |
| Angriffsfläche | Web-App, API, Anmeldung, Relay | Relay und signierter Datei-Endpunkt | keine eingehende |
Umschalten
sudo crewd visibility # zeigen
sudo crewd visibility hidden # wechselnErwartet: ✓ Sichtbarkeit: hidden. crewd schreibt den Caddyfile neu und startet Caddy neu.
Einzelne Pfade bei „verborgen“ öffnen
sudo crewd visibility --open hook:rou_abc123 # Webhook einer Routine (GitHub, Stripe …)
sudo crewd visibility --open oauth # OAuth-Rückruf für Anbieter ohne Loopback
sudo crewd visibility --close oauthUnsichtbar
Der Server nimmt keine Verbindungen an und holt Nachrichten bei einem Relay an anderer Stelle ab — am besten ein zweiter kleiner eigener Server (z. B. Hetzner CX22), der nur den Relay betreibt und keine Daten hält.
-
Auf dem Crew-Server den Pubkey von crewd ablesen:
sudo crewd relay -
Auf dem Relay-Server (Domain zeigt schon darauf):
curl -fsSL https://crewd.team/install.sh | sh -s -- --relay-only --crewd-pub <pubkey> --domain relay.deinedomain.deAm Ende steht der Befehl für den Crew-Server, mit dem Pubkey des Wächters.
-
Auf dem Crew-Server:
sudo crewd visibility invisible --relay wss://relay.deinedomain.de/relay --guard <pubkey des Wächters>
crewd schickt dem Wächter seine Liste erlaubter Schlüssel (sich selbst und die gekoppelten Geräte) als verschlüsseltes Ereignis. Der Wächter schreibt sie in die Einstellungen des Relays — ein neues Gerät darf dort also wenige Sekunden nach der Kopplung schreiben, ein widerrufenes nicht mehr.
Große Dateien und Live-Ansicht
Bei „verborgen“ lässt Caddy zusätzlich /file/… durch. crewd beantwortet dort nur Anfragen, die ein gekoppeltes Gerät
mit seinem Schlüssel signiert hat (NIP-98, 60 Sekunden gültig, jede Signatur nur einmal) — alle anderen bekommen dieselbe
leere 404 wie überall. Die Mac- und Windows-App laden darüber Anhänge hoch und herunter und zeigen die Live-Ansicht der
Agent-Computer; ohne diesen Weg geht beides in Teilen über den Relay.
Prüfen von außen
curl -i https://crew.deinedomain.de/api/state # verborgen: 404
sudo crewd doctor # D207 prüft das automatischPflicht in jeder Stufe: Im Servermodus braucht jede Anfrage ein Geräte-Token, auch vom Server selbst; CREW_AUTH=off
wirkt dort nicht. Wie die Apps im verborgenen Modus reden: Wie Nostr deine Verbindung schützt.