要让公网可以访问你的 OpenClaw,你需要将配置中的 bind 参数从 "loopback"(仅本地访问)修改为 "lan"(监听所有网络接口),并确保相关的网络安全措施已配置好。

你可以通过以下步骤完成修改:

  1. 修改配置
    连接到你运行 OpenClaw 的服务器,在终端中执行以下命令,将绑定模式修改为 lan

    bash

    openclaw config set gateway.bind "lan"

    这个命令会将配置文件中的 gateway.bind 的值从 "loopback" 修改为 "lan",这意味着 Gateway 将开始监听服务器的所有网络接口(即 0.0.0.0),从而允许来自局域网或公网的连接

  2. 重启 Gateway 服务
    配置修改后,需要重启 Gateway 服务才能使改动生效:

    bash

    openclaw gateway restart

    或者

    bash

    supervisorctl restart openclaw

    如果你使用的是通过 supervisor 管理的方式

  3. (关键)配置防火墙/安全组
    仅仅修改 OpenClaw 的配置是不够的,你还需要在云服务商的控制台或服务器防火墙中,放行 18789 端口(TCP协议)。这是外部流量能够到达你的 OpenClaw Gateway 的关键步骤

    • 云服务器:登录你的云服务商控制台(如阿里云、华为云、腾讯云等),找到你的实例所绑定的安全组,添加入方向规则,允许 18789 端口的访问。

    • 自有服务器:检查并配置服务器自身的防火墙(如 firewalld 或 iptables),允许外部IP访问 18789 端口。

  4. 确认认证方式
    当 bind 模式从 loopback 改为 lan 后,OpenClaw 会强制要求进行认证(通常为 Token 认证)。请确保你的 gateway.auth.mode 不是 "none",并且你知道或可以获取到访问所需的 Token:

    bash

    openclaw config get gateway.auth.token

完成以上步骤后,你就可以通过 http://<你的公网IP>:18789 来远程访问你的 OpenClaw 了


以上方法最终放弃。



但是最后仅靠一条命令就实现了。命令如下:

ssh -N -L 18789:127.0.0.1:18789 root@XXX.XXX.XXX.XXX

image.png

XXX.XXX.XXX.XXX 是你服务器的地址,亲测可以使用。

image.png




分类: 人工智能 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录