- mặc định:
http://<host>:18789/ - với
gateway.tls.enabled: true:https://<host>:18789/ - tiền tố tùy chọn: đặt
gateway.controlUi.basePath(ví dụ:/openclaw)
Webhook
Khihooks.enabled=true, Gateway cũng để lộ một endpoint webhook nhỏ trên cùng máy chủ HTTP.
Xem Cấu hình Gateway → hooks để biết xác thực + payload.
Admin HTTP RPC
Admin HTTP RPC để lộ các phương thức control-plane Gateway được chọn tạiPOST /api/v1/admin/rpc.
Tính năng này tắt theo mặc định và chỉ được đăng ký khi plugin admin-http-rpc được bật.
Xem Admin HTTP RPC để biết mô hình xác thực, các phương thức được phép và so sánh với WebSocket.
Cấu hình (bật mặc định)
Giao diện điều khiển được bật theo mặc định khi có tài nguyên (dist/control-ui).
Bạn có thể điều khiển nó qua cấu hình:
Truy cập Tailscale
Serve tích hợp (khuyến nghị)
Giữ Gateway trên loopback và để Tailscale Serve proxy nó:https://<magicdns>/(hoặcgateway.controlUi.basePathbạn đã cấu hình)
Bind Tailnet + token
http://<tailscale-ip>:18789/(hoặcgateway.controlUi.basePathbạn đã cấu hình)
Internet công khai (Funnel)
Ghi chú bảo mật
- Xác thực Gateway là bắt buộc theo mặc định (token, mật khẩu, trusted-proxy, hoặc header danh tính Tailscale Serve khi được bật).
- Các bind không phải loopback vẫn yêu cầu xác thực gateway. Trên thực tế, điều đó có nghĩa là xác thực token/mật khẩu hoặc một reverse proxy nhận biết danh tính với
gateway.auth.mode: "trusted-proxy". - Trình hướng dẫn tạo xác thực shared-secret theo mặc định và thường tạo một gateway token (ngay cả trên loopback).
- Ở chế độ shared-secret, UI gửi
connect.params.auth.tokenhoặcconnect.params.auth.password. - Khi
gateway.tls.enabled: true, dashboard cục bộ và các helper trạng thái hiển thị URL dashboardhttps://và URL WebSocketwss://. - Trong các chế độ mang danh tính như Tailscale Serve hoặc
trusted-proxy, kiểm tra xác thực WebSocket thay vào đó được thỏa mãn từ header yêu cầu. - Với các triển khai Giao diện điều khiển công khai không dùng loopback, hãy đặt
gateway.controlUi.allowedOriginsmột cách rõ ràng (origin đầy đủ). Các lượt tải LAN/Tailnet riêng tư cùng origin được chấp nhận cho loopback, RFC1918/link-local,.local,.ts.net, và host Tailscale CGNAT. gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback=truebật chế độ fallback origin theo Host-header, nhưng đây là một hạ cấp bảo mật nguy hiểm.- Với Serve, header danh tính Tailscale có thể thỏa mãn xác thực Giao diện điều khiển/WebSocket
khi
gateway.auth.allowTailscalelàtrue(không cần token/mật khẩu). Các endpoint HTTP API không dùng các header danh tính Tailscale đó; thay vào đó chúng tuân theo chế độ xác thực HTTP bình thường của gateway. Đặtgateway.auth.allowTailscale: falseđể yêu cầu thông tin xác thực rõ ràng. Xem Tailscale và Bảo mật. Luồng không token này giả định host gateway là đáng tin cậy. 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ụ tệp tĩnh từdist/control-ui. Xây dựng chúng bằng: