Web (Gateway)¶
Gateway cung cấp một Control UI trên trình duyệt nhỏ (Vite + Lit) từ cùng một cổng với Gateway WebSocket:
- mặc định:
http://<host>:18789/ - tiền tố tùy chọn: đặt
gateway.controlUi.basePath(ví dụ:/openclaw)
Các khả năng nằm trong Control UI. Trang này tập trung vào các chế độ bind, bảo mật và các bề mặt hướng web.
Webhooks¶
Khi hooks.enabled=true, Gateway cũng cung cấp một endpoint webhook nhỏ trên cùng một máy chủ HTTP.
See Gateway configuration → hooks for auth + payloads.
Config (bật mặc định)¶
The Control UI is enabled by default when assets are present (dist/control-ui).
Bạn có thể điều khiển nó qua cấu hình:
{
gateway: {
controlUi: { enabled: true, basePath: "/openclaw" }, // basePath optional
},
}
Truy cập Tailscale¶
Serve tích hợp (khuyến nghị)¶
Giữ Gateway trên loopback và để Tailscale Serve proxy nó:
{
gateway: {
bind: "loopback",
tailscale: { mode: "serve" },
},
}
Sau đó khởi động gateway:
openclaw gateway
Mở:
https://<magicdns>/(hoặcgateway.controlUi.basePathđã cấu hình của bạn)
Bind tailnet + token¶
{
gateway: {
bind: "tailnet",
controlUi: { enabled: true },
auth: { mode: "token", token: "your-token" },
},
}
Sau đó khởi động gateway (cần token cho các bind không phải loopback):
openclaw gateway
Mở:
http://<tailscale-ip>:18789/(hoặcgateway.controlUi.basePathđã cấu hình của bạn)
Internet công cộng (Funnel)¶
{
gateway: {
bind: "loopback",
tailscale: { mode: "funnel" },
auth: { mode: "password" }, // or OPENCLAW_GATEWAY_PASSWORD
},
}
Ghi chú bảo mật¶
- Xác thực Gateway được yêu cầu theo mặc định (token/mật khẩu hoặc header định danh Tailscale).
- Các bind không phải loopback vẫn bắt buộc dùng token/mật khẩu dùng chung (
gateway.authhoặc env). - Trình hướng dẫn tạo token gateway theo mặc định (kể cả trên loopback).
- UI gửi
connect.params.auth.tokenhoặcconnect.params.auth.password. - Control UI gửi các header chống clickjacking và chỉ chấp nhận kết nối websocket
từ trình duyệt cùng nguồn trừ khi đặt
gateway.controlUi.allowedOrigins. - Với Serve, các header danh tính Tailscale có thể đáp ứng xác thực khi
gateway.auth.allowTailscalelàtrue(không cần token/mật khẩu). 36. Đặtgateway.auth.allowTailscale: falseđể yêu cầu thông tin xác thực rõ ràng. See Tailscale and Security. gateway.tailscale.mode: "funnel"yêu cầugateway.auth.mode: "password"(mật khẩu dùng chung).
Xây dựng UI¶
Gateway phục vụ các tệp tĩnh từ dist/control-ui. Xây dựng chúng bằng:
pnpm ui:build # auto-installs UI deps on first run