Web (Gateway)
Gateway, Gateway WebSocket’i ile aynı bağlantı noktasından küçük bir tarayıcı Control UI’ı (Vite + Lit) sunar:- varsayılan:
http://<host>:18789/ - isteğe bağlı önek:
gateway.controlUi.basePathayarlayın (ör./openclaw)
Webhook’lar
hooks.enabled=true olduğunda Gateway, aynı HTTP sunucusunda küçük bir webhook uç noktası da sunar.
Kimlik doğrulama + yükler için Gateway configuration → hooks bölümüne bakın.
Yapılandırma (varsayılan olarak açık)
Control UI, varlıklar mevcut olduğunda (dist/control-ui) varsayılan olarak etkindir.
Bunu yapılandırma üzerinden denetleyebilirsiniz:
Tailscale erişimi
Tümleşik Serve (önerilen)
Gateway’i loopback üzerinde tutun ve Tailscale Serve’ün bunu proxy’lemesine izin verin:https://<magicdns>/(veya yapılandırdığınızgateway.controlUi.basePath)
Tailnet bind + token
http://<tailscale-ip>:18789/(veya yapılandırdığınızgateway.controlUi.basePath)
Genel internet (Funnel)
Güvenlik notları
- Gateway kimlik doğrulaması varsayılan olarak gereklidir (token, parola, trusted-proxy veya etkinleştirildiğinde Tailscale Serve kimlik üstbilgileri).
- Loopback olmayan bağlamalar yine de gateway kimlik doğrulaması gerektirir. Pratikte bu, token/parola kimlik doğrulaması veya
gateway.auth.mode: "trusted-proxy"kullanan kimlik farkındalıklı bir ters proxy anlamına gelir. - Sihirbaz varsayılan olarak paylaşılan gizli kimlik doğrulaması oluşturur ve genellikle bir gateway token üretir (loopback üzerinde bile).
- Paylaşılan gizli modda UI,
connect.params.auth.tokenveyaconnect.params.auth.passwordgönderir. - Tailscale Serve veya
trusted-proxygibi kimlik taşıyan modlarda, WebSocket kimlik doğrulama denetimi bunun yerine istek üstbilgilerinden karşılanır. - Loopback olmayan Control UI dağıtımları için
gateway.controlUi.allowedOriginsdeğerini açıkça ayarlayın (tam origin’ler). Bu olmadan, gateway başlangıcı varsayılan olarak reddedilir. gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback=true, Host üstbilgisi origin fallback modunu etkinleştirir, ancak bu tehlikeli bir güvenlik düşüşüdür.- Serve ile,
gateway.auth.allowTailscaletrueolduğunda Tailscale kimlik üstbilgileri Control UI/WebSocket kimlik doğrulamasını karşılayabilir (token/parola gerekmez). HTTP API uç noktaları bu Tailscale kimlik üstbilgilerini kullanmaz; bunun yerine gateway’in normal HTTP kimlik doğrulama modunu izlerler. Açık kimlik bilgileri gerektirmek içingateway.auth.allowTailscale: falseayarlayın. Bkz. Tailscale ve Security. Bu tokensız akış, gateway ana makinesinin güvenilir olduğunu varsayar. gateway.tailscale.mode: "funnel"içingateway.auth.mode: "password"(paylaşılan parola) gerekir.
UI’ı oluşturma
Gateway,dist/control-ui içinden statik dosyalar sunar. Bunları şu komutla oluşturun: