Webb (Gateway)
Gatewayn tillhandahåller ett litet kontroll-UI i webbläsaren (Vite + Lit) från samma port som Gateway WebSocket:- standard:
http://<host>:18789/ - valfritt prefix: sätt
gateway.controlUi.basePath(t.ex./openclaw)
Webhooks
Närhooks.enabled=true, exponerar Gateway också en liten webhook slutpunkt på samma HTTP-server.
Se Gateway konfiguration → hooks för auth + nyttolaster.
Konfig (på som standard)
Kontrollgränssnittet är aktiverat som standard när tillgångar finns (dist/control-ui).
Du kan styra den via config:
Tailscale-åtkomst
Integrerad Serve (rekommenderas)
Behåll Gatewayn på local loopback och låt Tailscale Serve proxy den:https://<magicdns>/(eller din konfigureradegateway.controlUi.basePath)
Tailnet-bindning + token
http://<tailscale-ip>:18789/(eller din konfigureradegateway.controlUi.basePath)
Publika internet (Funnel)
Säkerhetsnoteringar
- Gateway-autentisering krävs som standard (token/lösenord eller Tailscale-identitetshuvuden).
- Bindningar som inte är loopback kräver fortfarande en delad token/lösenord (
gateway.autheller env). - Guiden genererar som standard en gateway-token (även på loopback).
- UI:t skickar
connect.params.auth.tokenellerconnect.params.auth.password. - Kontroll-UI:t skickar anti-clickjacking-huvuden och accepterar endast webbläsarens
websocket-anslutningar från samma ursprung om inte
gateway.controlUi.allowedOriginsär satt. - Med Serve kan Tailscale identitetshuvuden tillfredsställa auth när
gateway.auth.allowTailscaleärtrue(ingen token/lösenord krävs). Angegateway.auth.allowTailscale: falseför att kräva explicita referenser. Se Tailscale och Security. gateway.tailscale.mode: "funnel"krävergateway.auth.mode: "password"(delat lösenord).
Bygga UI:t
Gateway serverar statiska filer fråndist/control-ui. Bygg dem med: