Direkter Fernzugriff

Direktzugriff verbindet sich über das Serverpasswort mit CodeNomads HTTP-/HTTPS-Listenern. Er ist von der Fernsteuerung getrennt: Kopplung benötigt weder LAN-Bindung noch eingehenden Port, und keiner der Wege weicht stillschweigend auf den anderen aus.

Zugriffsweg wählen

Weg Was Sie verwalten
Browser auf demselben Rechner Loopback-Bindung beibehalten; ausgegebene lokale URL verwenden.
LAN oder VPN Erreichbare Schnittstelle binden, Firewall auf vorgesehene Clients begrenzen und vertrauenswürdiges HTTPS verwenden. Ein VPN konfiguriert CodeNomads Listener nicht für Sie.
SSH-Weiterleitung Backend an Loopback gebunden lassen; tatsächlich ausgegebenen Port weiterleiten. Der Tunnel schützt den Transport, ersetzt aber nicht CodeNomad-Authentifizierung.
Reverse-Proxy Backend auf privater/Loopback-Schnittstelle belassen; vertrauenswürdiges TLS am Proxy terminieren, den Upstream-Abschnitt schützen und langlebige SSE sowie benötigte WebSockets Ihrer Direktzugriffswerkzeuge unterstützen.
Fernsteuerung Gerät vom Host aus koppeln; eingeschränktere Oberfläche und Lebensdauer siehe Fernsteuerung.

Eine Bindung erzeugt keine Firewallregeln, Portweiterleitung, DNS oder VPN. Veröffentlichen Sie keinen nicht authentifizierten HTTP-Listener im Internet. Ein Arbeitsbereichs-Stammverzeichnis ist keine Sicherheits-Sandbox; lesen Sie vor der Freigabe des Servers Sicherheit.

Direktzugriff aktivieren

  1. Öffnen Sie auf dem Host Einstellungen → Remote-Zugriff und klappen Sie Direktzugriff (lokales Netzwerk, erweitert) auf.
  2. Wählen Sie unter Server-Passwort entweder Passwort festlegen oder Passwort ändern, geben Sie Neues Passwort und Passwort bestätigen ein und wählen Sie Passwort speichern. Zur Laufzeit übergebene Passwörter können hier nicht geändert werden; siehe Sicherheit.
  3. Aktivieren Sie Verbindungen von anderen IPs zulassen unter Abhörmodus (Listening mode). Lesen Sie die Neustartwarnung und wählen Sie Jetzt neu starten erst, wenn Sie für die vorübergehende Unterbrechung bereit sind.
  4. Verwenden Sie nach dem Neustart Aktualisieren und prüfen Sie Erreichbare Adressen. Öffnen Sie die erreichbare HTTPS-Adresse auf dem anderen Gerät oder wählen Sie QR anzeigen auf dem Host und scannen Sie mit dem anderen Gerät; melden Sie sich dann an.

Dies ändert den direkten Abhörmodus des Hosts, nicht ein Projekt und nicht die Fernsteuerung. Der Abschnitt öffnet sich automatisch, solange der Server über localhost hinaus lauscht. Ist automatischer Neustart nicht verfügbar, starten Sie CodeNomad manuell neu; eigenständige Bereitstellungen müssen ihr Start---host konsistent setzen. Zum Entfernen der Freigabe deaktivieren Sie den Schalter und starten neu oder starten die CLI erneut mit Loopback-Bindung. Dies widerruft keine gekoppelten Fernsteuerungsgeräte.

Listener-Bindungsmatrix

--host ist standardmäßig 127.0.0.1; localhost wird auf diese Adresse normalisiert. Für aktivierte Listener gelten folgende Regeln:

Start/Modus HTTP bindet an HTTPS bindet an
Eigenständig, nur HTTPS (Standard) Nur privater Loopback-Listener (siehe unten) --host
Eigenständig, nur HTTP --host, einschließlich LAN-/Wildcard-Adresse Nicht aktiviert
Eigenständig, beide Listener 127.0.0.1 unabhängig von --host --host
Natives Desktop-Backend Sein HTTP-Listener bleibt auf 127.0.0.1, einschließlich des hostinternen Listeners --host, wenn HTTPS aktiviert ist

Jedes Backend behält außerdem einen HTTP-Listener auf 127.0.0.1 für CodeNomads eigene mitgelieferte OpenCode-Plugins wie Missionen. Wurde HTTP nicht angefordert oder ist der angeforderte HTTP-Listener an eine andere Adresse als 127.0.0.1 oder 0.0.0.0 gebunden, ergänzt das Backend einen privaten HTTP-Listener auf einem zufälligen 127.0.0.1-Port. Er wird nie ausgegeben oder als Verbindungsadresse angeboten, ist von anderen Rechnern nicht erreichbar und stellt dieselbe authentifizierte Anwendung bereit.

Eine konkrete LAN-Adresse muss keine Loopback-Verbindungen annehmen. 0.0.0.0 bedeutet alle IPv4-Schnittstellen; :: ist der Dual-Stack-Wildcard-Listener. Verwenden Sie im Browser eine tatsächlich erreichbare Adresse, keine Wildcard. IPv6-Zonenkennungen werden in --host nicht unterstützt.

Setzen Sie für eine eigenständige HTTPS-Bereitstellung ein Passwort über die Ersteinrichtung und führen Sie dann aus:

codenomad --host 0.0.0.0 --https=true --http=false

Für reines Loopback-HTTP, etwa hinter einem lokalen vertrauenswürdigen Proxy:

codenomad --host 127.0.0.1 --https=false --http=true

Setzen Sie Port 9898 oder 9899 nicht voraus: Nicht angegebene Ports können bei Belegung ausweichen. Ein expliziter von null verschiedener --https-port oder ein --http-port bei aktiviertem HTTP legt den Port fest und schlägt bei fehlgeschlagener Bindung fehl; 0 fordert eine OS-Zuweisung an. Die ausgegebenen Local Connection URL und Remote Connection URL sowie aktualisierte Erreichbare Adressen sind für diesen Lauf maßgeblich. Siehe die vollständige Server-CLI-Referenz.

Vertrauenswürdiges TLS konfigurieren

Eigenes Zertifikat bereitstellen

  1. Beschaffen Sie ein Zertifikat, dessen Subject Alternative Names (SANs) den tatsächlich von Clients verwendeten Hostnamen oder die IP abdecken.
  2. Geben Sie sowohl --tls-key <path> als auch --tls-cert <path> als PEM-Dateien an. Ergänzen Sie --tls-ca <path>, falls Ihre Bereitstellung eine CA-Kette/ein Bundle benötigt.
  3. Starten Sie CodeNomad neu und prüfen Sie Zertifikat sowie ausgegebene HTTPS-Adresse vom Client-Gerät aus.

Eigene Zertifikatsdateien werden beim Start gelesen und niemals von CodeNomad umgeschrieben. Erneuerung und erforderlicher Neustart zum Laden erneuerter Dateien liegen bei Ihnen. --tlsSANs konfiguriert erzeugte Zertifikate; es kann einem bereitgestellten Zertifikat keine Namen hinzufügen. Schützen Sie private Schlüssel und vertrauen Sie nur Zertifikaten mit überprüfter Hostidentität.

Erzeugte lokale CA verwenden

Bei aktiviertem HTTPS ohne bereitgestelltes Schlüssel-/Zertifikatspaar erstellt CodeNomad lokale CA und Serverzertifikat unter der Konfigurationsbasis:

Datei Zweck
tls/ca-cert.pem Öffentliches CA-Zertifikat zur sicheren Verteilung an von Ihnen verwaltete Clients.
tls/ca-key.pem Privater CA-Schlüssel; niemals verteilen.
tls/server-cert.pem Serverzertifikat.
tls/server-key.pem Privater Serverschlüssel; niemals verteilen.
  1. Ergänzen Sie jeden für Clients verwendeten DNS-Namen/jede IP mit --tlsSANs "host.example.test,192.0.2.10". Wildcard-Bindung findet nicht alle LAN-Adressen für SANs.
  2. Starten Sie das Backend neu, um das Zertifikat zu erzeugen/erneut zu prüfen.
  3. Prüfen Sie Host/CA über einen vertrauenswürdigen Kanal und importieren Sie dann nur das CA-Zertifikat in den Vertrauensspeicher jedes vorgesehenen Clients/Browsers. Alternativ verwenden Sie ein öffentlich vertrauenswürdiges Zertifikat oder einen TLS-Reverse-Proxy.

Das erzeugte Serverzertifikat gilt 30 Tage. Beim Start wird es innerhalb von drei Tagen vor Ablauf, bei fehlenden erforderlichen SANs, fehlgeschlagenen Zertifikatsprüfungen oder fehlender privater Schlüsseldatei erneuert. Die erzeugte CA gilt 365 Tage und wird bei Ablauf, fehlgeschlagenen Zertifikatsprüfungen oder fehlender privater Schlüsseldatei ersetzt; dabei wird auch das Serverzertifikat neu ausgestellt. Vorhandene beschädigte, unlesbare oder unpassende private Schlüssel werden nicht automatisch repariert. Clients müssen der Ersatz-CA vertrauen. Es gibt keine kontinuierliche Erneuerung im laufenden Prozess: Planen Sie für Langzeitbereitstellungen einen bewussten Neustart vor Ablauf.

Meldet ein Client eine Zertifikatswarnung, halten Sie an und prüfen Sie Hostname, SANs, Vertrauensspeicher und Ablauf. Deaktivieren Sie keine Prüfung und machen Sie das Wegklicken von Warnungen nicht zum Bereitstellungsverfahren. Vertrauenswürdiges HTTPS ist auch für entfernte Browserfunktionen wie PWA-Installation und Mikrofonzugriff erforderlich.

Remote-Server speichern

  1. Wählen Sie auf der Desktop-Startseite CodeNomad-Server verbinden. Dieselbe Schaltfläche erscheint auf einem leeren Tab Server und unter Einstellungen → Remote-Zugriff → Server.
  2. Geben Sie in Mit Server verbinden Servername und Server-URL mit einer vertrauenswürdigen HTTPS-Origin ein. Lassen Sie TLS-Verifizierung für selbstsignierte Zertifikate überspringen. deaktiviert; richten Sie stattdessen Vertrauen ein.
  3. Wählen Sie Speichern für ein Lesezeichen oder Verbinden zum Speichern und Öffnen. Melden Sie sich auf diesem Server an.

Wählen Sie einen gespeicherten Server auf dem Tab Server der Startseite, um ihn erneut zu öffnen. Lesezeichen gehören zu dieser CodeNomad-Konfiguration, nicht den Projekten des Remote-Servers. Eine URL zu speichern startet keinen Server und gewährt keinen Zugriff. Gespeicherten Server entfernen entfernt das Lesezeichen, nicht entfernte Unterhaltungen, Backend oder Zugangsdaten.

Fügen Sie für Fernsteuerung stattdessen einen frischen Kopplungslink in Server-URL ein. Das Lesezeichen behält nur die Tunnel-Origin, nie den Einmal-Kopplungscode; siehe Fernsteuerung zur erneuten Kopplung nach Verlust des Geräte-Cookies.