Web interfaces
Панель управления
Панель Gateway — это браузерный интерфейс управления, по умолчанию обслуживаемый по адресу /
(переопределяется через gateway.controlUi.basePath).
Быстрое открытие (локальный Gateway):
- http://127.0.0.1:18789/ (или http://localhost:18789/)
- При
gateway.tls.enabled: trueиспользуйтеhttps://127.0.0.1:18789/иwss://127.0.0.1:18789для конечной точки WebSocket.
Ключевые справочные материалы:
- Интерфейс управления для использования и возможностей UI.
- Tailscale для автоматизации Serve/Funnel.
- Веб-поверхности для режимов привязки и заметок по безопасности.
Аутентификация выполняется при WebSocket handshake через настроенный путь аутентификации Gateway:
connect.params.auth.tokenconnect.params.auth.password- заголовки идентификации Tailscale Serve, когда
gateway.auth.allowTailscale: true - заголовки идентификации trusted-proxy, когда
gateway.auth.mode: "trusted-proxy"
См. gateway.auth в конфигурации Gateway.
Примечание по безопасности: интерфейс управления — это административная поверхность (чат, конфигурация, подтверждения exec). Не открывайте его в публичный доступ. UI хранит токены URL панели в sessionStorage для текущей сессии вкладки браузера и выбранного URL Gateway, а после загрузки удаляет их из URL. Предпочитайте localhost, Tailscale Serve или SSH-туннель.
Быстрый путь (рекомендуется)
- После онбординга CLI автоматически открывает панель и выводит чистую ссылку (без токена).
- Повторно открыть в любое время:
openclaw dashboard(копирует ссылку, по возможности открывает браузер, показывает подсказку SSH в headless-режиме). - Если доставка через буфер обмена и браузер не удалась,
openclaw dashboardвсе равно выводит чистый URL и сообщает, что нужно использовать токен изOPENCLAW_GATEWAY_TOKENилиgateway.auth.tokenкак ключ фрагмента URLtoken; значения токенов в логи не выводятся. - Если UI запрашивает аутентификацию по общему секрету, вставьте настроенный токен или пароль в настройки интерфейса управления.
Основы аутентификации (локально и удаленно)
- Localhost: откройте
http://127.0.0.1:18789/. - TLS Gateway: когда
gateway.tls.enabled: true, ссылки панели/статуса используютhttps://, а ссылки WebSocket интерфейса управления используютwss://. - Источник токена общего секрета:
gateway.auth.token(илиOPENCLAW_GATEWAY_TOKEN);openclaw dashboardможет передать его через фрагмент URL для одноразовой начальной настройки, а интерфейс управления хранит его в sessionStorage для текущей сессии вкладки браузера и выбранного URL Gateway вместо localStorage. - Если
gateway.auth.tokenуправляется через SecretRef,openclaw dashboardнамеренно выводит/копирует/открывает URL без токена. Это предотвращает раскрытие внешне управляемых токенов в логах оболочки, истории буфера обмена или аргументах запуска браузера. - Если
gateway.auth.tokenнастроен как SecretRef и не разрешается в вашей текущей оболочке,openclaw dashboardвсе равно выводит URL без токена, а также практические инструкции по настройке аутентификации. - Пароль общего секрета: используйте настроенный
gateway.auth.password(илиOPENCLAW_GATEWAY_PASSWORD). Панель не сохраняет пароли между перезагрузками. - Режимы с идентификацией: Tailscale Serve может выполнять аутентификацию интерфейса управления/WebSocket
через заголовки идентификации, когда
gateway.auth.allowTailscale: true, а reverse proxy с учетом идентификации вне local loopback может выполнятьgateway.auth.mode: "trusted-proxy". В этих режимах панели не требуется вставленный общий секрет для WebSocket. - Не localhost: используйте Tailscale Serve, привязку с общим секретом вне local loopback,
reverse proxy с учетом идентификации вне local loopback с
gateway.auth.mode: "trusted-proxy"или SSH-туннель. HTTP API по-прежнему используют аутентификацию по общему секрету, если вы намеренно не запускаете private-ingressgateway.auth.mode: "none"или HTTP-аутентификацию trusted-proxy. См. Веб-поверхности.
Если вы видите "unauthorized" / 1008
- Убедитесь, что Gateway доступен (локально:
openclaw status; удаленно: SSH-туннельssh -N -L 18789:127.0.0.1:18789 user@host, затем откройтеhttp://127.0.0.1:18789/). - Для
AUTH_TOKEN_MISMATCHклиенты могут выполнить одну доверенную повторную попытку с кэшированным токеном устройства, когда Gateway возвращает подсказки для повтора. Такая повторная попытка с кэшированным токеном повторно использует кэшированные одобренные области действия токена; вызывающие стороны с явнымdeviceToken/ явнымиscopesсохраняют запрошенный набор областей действия. Если после этой повторной попытки аутентификация все еще не проходит, устраните расхождение токенов вручную. - Для
AUTH_SCOPE_MISMATCHтокен устройства был распознан, но не содержит запрошенные панелью области действия; выполните повторное сопряжение или одобрите запрошенный контракт областей действия вместо ротации общего токена Gateway. - Вне этого пути повторной попытки приоритет аутентификации подключения таков: сначала явный общий токен/пароль, затем явный
deviceToken, затем сохраненный токен устройства, затем bootstrap-токен. - На асинхронном пути Tailscale Serve для интерфейса управления неудачные попытки для одного и того же
{scope, ip}сериализуются до того, как лимитер неудачной аутентификации их запишет, поэтому вторая параллельная неверная повторная попытка уже может показатьretry later. - Для шагов восстановления при расхождении токенов следуйте контрольному списку восстановления при расхождении токенов.
- Получите или передайте общий секрет с хоста Gateway:
- Токен:
openclaw config get gateway.auth.token - Пароль: разрешите настроенный
gateway.auth.passwordилиOPENCLAW_GATEWAY_PASSWORD - Токен, управляемый SecretRef: разрешите внешний поставщик секретов или экспортируйте
OPENCLAW_GATEWAY_TOKENв этой оболочке, затем повторно выполнитеopenclaw dashboard - Общий секрет не настроен:
openclaw doctor --generate-gateway-token
- Токен:
- В настройках панели вставьте токен или пароль в поле аутентификации, затем подключитесь.
- Переключатель языка UI находится в Overview -> Gateway Access -> Language. Он является частью карточки доступа, а не раздела Appearance.
См. также
Was this useful?