openclaw 环境配置

我在天翼云电脑上安装了一套openclaw(基于wsl 的ubuntu)是在内网部署后想要通过公网访问claw 的webui网页界面,就需要将服务端口18789 端口对外暴漏。

通过frpc 客户端与公网服务器绑定tcp端口 18789,也可以配置域名。

并在公网服务器搭建一个域名反向代理到本机的127.0.0.1::18789端口。(宝塔面板)。
配置域名后申请ssl证书。
修改 openclaw 配置中 gateway的 local: loopback 改为 auto。

然后将你的访问从 http://127.0.0.1:18789

改为你的域名:https 的形式访问。

如果是云服务器记得将用到的frts 服务端的端口、web的80端口,https 的443 端口加入防火墙放行。

openclaw webui 如何使用公网访问:

openclaw webui 在新设备下遇到 1008错误。

disconnected (1008): unauthorized: gateway token missing (open a tokenized dashboard URL or paste token in Control UI settings)

首先解决网关的token:通过公网链接的带着token 访问:
https://aibot.bitx.cn/?token=191f3c0188955ef

然后继续解决

需要对配对设备进行授权

获得在等待Pending 的设备。
openclaw devices list

然后复制Pending 的Request执行配对。

openclaw devices approve <Request>

openclaw devices approve bb100-d1b-42e2-bef-3307377

我按照从零部署到公网交付的逻辑,为你整理一份更具深度、步骤详尽的配置全攻略。


OpenClaw 跨网部署与全域访问实战教程

本教程适用于在**天翼云电脑(内网环境)**中,利用 WSL2 部署 OpenClaw,并通过 frp + 宝塔面板 实现公网 HTTPS 安全访问。


核心架构思路

  1. 宿主层 (WSL2):在 Ubuntu 中运行 OpenClaw 核心服务及 Gateway。
  2. 隧道层 (frp):通过内网穿透将 WSL 的端口映射至公网服务器。
  3. 代理层 (Nginx/宝塔):实现域名解析、SSL 加密及 WebSocket 流量转发。
  4. 安全层 (Claw Auth):完成网关 Token 注入与设备配对授权。

第一阶段:OpenClaw 基础部署(WSL 侧)

  1. 安装与初始化:在 WSL Ubuntu 终端执行官方安装脚本:Bashcurl -L https://raw.githubusercontent.com/openclaw/openclaw/master/install.sh | bash
  2. 修改网关监听(关键步):OpenClaw 默认仅允许本地回环访问。为了让外网流量进入,需修改配置:Bashnano ~/.openclaw/config.yml # 或者使用 openclaw config edit 找到 gateway 部分,将 local: loopback 修改为:local: auto
  3. 获取初始 Token:查看当前配置或日志,记录下 gateway_token,后续访问域名时必须携带。Bashopenclaw config show | grep token

第二阶段:内网穿透(frp 链路)

你需要一台拥有公网 IP 的服务器作为中转。

  1. 公网服务端 (frps):在公网服务器运行 frps。确保防火墙(安全组)放行:
    • 7000 (frp 协议端口)
    • 18789 (业务转发端口)
  2. 本地客户端 (frpc):在天翼云电脑(WSL 或 Windows 均可)部署 frpc:Ini, TOML[openclaw_web] type = tcp local_ip = 127.0.0.1 local_port = 18789 remote_port = 18789
  3. 连通性测试:启动后检查公网服务器端口是否已开启:netstat -ntlp | grep 18789

第三阶段:域名反代与 SSL 加密(宝塔侧)

为了安全与便捷,建议使用域名访问并配置 HTTPS。

  1. 创建站点:在宝塔面板新建站点(如 claw.yourdomain.com)。
  2. 申请 SSL:在站点设置中申请并启用 Let’s Encrypt 证书,开启强制 HTTPS
  3. 配置反向代理
    • 添加反代:目标 URL 填写 http://127.0.0.1:18789
    • 编辑配置文件:点击“配置文件”,确保反代代码块包含以下内容(支持 WebSocket):Nginxproxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";

第四阶段:公网首次访问与权限激活

通过公网域名访问时,会遇到你提到的 1008 错误,请按序操作:

1. 携带 Token 激活 WebUI

由于是新域名访问,浏览器 Cookie 为空,必须在 URL 后手动拼接 Token:

访问地址: https://你的域名/?token=你的网关Token

2. 解决设备授权 (Device Approval)

即便 Token 正确,OpenClaw 仍会拦截“未识别设备”。

  1. 刷新网页:你会看到 Waiting for approval1008 报错。
  2. 在 WSL 中查看请求:Bashopenclaw devices list 你会看到一条状态为 Pending 的记录,并带有一个 Request ID
  3. 通过授权:Bashopenclaw devices approve <刚才看到的Request-ID>
  4. 完成:刷新浏览器,即可进入 OpenClaw 管理界面。

常见坑点排查

  • 防火墙:除了宝塔内部的防火墙,云服务商的云盾/安全组 必须手动放行 80, 443, 7000, 18789 端口。
  • WSL 宿主映射:如果 frpc 运行在 Windows 上而非 WSL 内,local_ip 应指向 WSL 的虚拟 IP(通过 hostname -I 查看)。
  • Token 遗忘:如果无法获取 Token,可以尝试 openclaw reset-token 重新生成。

下一步建议:

配置完成后,建议你将 openclawfrpc 均设置为 开机自启动(Systemd 服务),防止天翼云电脑重启后服务中断。需要我为你提供 Systemd 的服务脚本模版吗?