从零开始在Ubuntu上部署OpenClaw并搞定局域网访问

从零开始在Ubuntu上部署OpenClaw并搞定局域网访问div id navCategory div p 上周心血来潮 想在自己的 Ubuntu 机器上跑个 OpenClaw 玩玩 结果这一折腾就是两小时 中间踩了无数坑 从 nvm 装不上 配置文件报错 到局域网死活连不上 现在终于跑通了 赶紧把过程记下来 p

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



 
  
    
    

上周心血来潮,想在自己的 Ubuntu 机器上跑个 OpenClaw 玩玩,结果这一折腾就是两小时。中间踩了无数坑,从 nvm 装不上、配置文件报错,到局域网死活连不上……现在终于跑通了,赶紧把过程记下来,希望能帮到和我一样的新手。

按照官方文档,第一行 curl -o- https://raw.githubusercontent.com/... 直接就超时了。国内这网络你懂的,raw.githubusercontent.com 经常抽风。

试了试网上说的用 jsDelivr 镜像,居然成功了:

GPT plus 代充 只需 145curl -o- https://cdn.jsdelivr.net/gh/nvm-sh/nvm@v0.40.4/install.sh | bash

如果镜像也不行,其实还有个笨办法:在浏览器里打开那个地址,把脚本内容全选复制下来,在服务器上新建个 install.sh 贴进去,然后 bash install.sh 一样能装。我就是这么干的。

装完 nvm 记得 source ~/.bashrc 一下,然后用 nvm install 22 装 Node.js,这一步倒挺顺利。

curl -fsSL https://openclaw.ai/install.sh | bash 

这个命令跑完,openclaw –version 能输出版本号,说明装上了。这时候我天真地以为马上就能用了。

运行 openclaw onboard,让我选模型提供商。我用的是阿里云百炼,想着国内服务延迟低。结果填完 API Key 和 Base URL 后,一直报 401 错误。

查了半天才发现,百炼的 API Key 分地域!我创建 key 时选的是北京节点,但 Base URL 填成了新加坡的 dashscope-intl.aliyuncs.com。改成北京的 https://dashscope.aliyuncs.com/compatible-mode/v1 后立马好了。

教训: API Key 和 Base URL 的地域必须一致,北京对北京,新加坡对新加坡。

配置完模型,运行 openclaw gateway start,结果告诉我 gateway.mode 没设置。这个 mode 是啥?文档里也没细说。

试了试 openclaw config set gateway.mode local,然后再重启网关,终于不报这个错了。但紧接着又提示配置有问题,让我运行 openclaw doctor --fix

doctor 倒是自动修了一些东西,但最后留了个 gateway.port 类型错误的提示。打开 ~/.openclaw/openclaw.json 一看,原来 "port": "18789" 写成了字符串,应该是数字。手动把引号去掉,保存,再重启网关,这次终于 openclaw status 显示网关 running 了。

服务器上 curl http://127.0.0.1:18789 正常,但在同一局域网的笔记本上 访问 http://192.168.1.100:18789 死活打不开。

先想到的是防火墙,检查了一下:

果然没开放 18789 端口,赶紧加上:

sudo ufw allow 18789/tcp 

加了之后笔记本还是连不上。用 ss -tlnp | grep 18789 一看,服务只监听了 127.0.0.1,没监听 0.0.0.0。也就是说它只接受本机访问。

按照直觉,我应该在配置文件里把 bind 改成 0.0.0.0。结果改完一重启网关,直接报错说 0.0.0.0 是 legacy 用法,现在要用 lanloopback 这些模式。

查了下文档,原来新版 OpenClaw 引入了“绑定模式”的概念。改成 "bind": "lan" 后,网关重启,再用 ss 看,终于变成 0.0.0.0:18789 了。

以为万事大吉,结果笔记本浏览器访问时,控制台报错 origin not allowed。这又是浏览器的跨域保护。需要在配置里把笔记本访问的地址加到 allowedOrigins 里。

我服务器 IP 是 192.168.1.100,所以在 gateway.controlUi.allowedOrigins 里加上 "http://192.168.1.100:18789"。重启后,不报 origin 了,但弹出了 unauthorized: gateway token missing

原来 OpenClaw 默认需要设备认证,首次访问必须带 token。在服务器上运行 openclaw dashboard,会输出一个类似 http://127.0.0.1:18789/?token=abc123... 的地址。把 127.0.0.1 换成 192.168.1.100,在笔记本浏览器里打开,终于进去了!

每次都要找 token 挺麻烦的,反正是家里局域网,我就把两个安全选项关了:

GPT plus 代充 只需 145openclaw config set gateway.controlUi.allowInsecureAuth true openclaw config set gateway.controlUi.dangerouslyDisableDeviceAuth true systemctl --user restart openclaw-gateway.service 

这下直接在笔记本浏览器里输 http://192.168.1.100:18789 就能进,不需要 token 了。不过要提醒自己:如果家里有客人用 Wi-Fi,或者电脑中病毒,别人也能访问我的 OpenClaw,所以平时用完后最好再把这两个选项关掉。

折腾下来,最深的体会是:OpenClaw 的安全机制设计得很严,虽然对新手不太友好,但确实是为了防止配置不当导致的安全问题。尤其是那个“绑定模式”的引入,一开始觉得多此一举,后来想想,强制用户明确服务暴露范围,其实是好事。

如果你也想部署,这里有几个小建议:

  • 网络问题:提前准备好 nvm 安装脚本的镜像或离线包,省得卡在第一关。
  • API Key 地域:务必和 Base URL 匹配,百炼用户特别留意。
  • 配置文件:直接改 JSON 比用命令行快,但改完记得用 openclaw config get 检查一下。
  • 局域网访问:如果只是自己用,SSH 隧道是最简单安全的方法,不用折腾这些 CORS 和认证。命令只有一行:ssh -L 18789:localhost:18789 用户名@服务器IP,然后在浏览器里打开 http://localhost:18789 就行。

最后,OpenClaw 跑起来后,真的挺有意思的。可以让它帮我总结网页、写邮件,还能接入飞书当机器人。虽然配置过程有点折腾,但看到它跑起来那一刻,还是很有成就感的。

到此这篇关于从零开始在Ubuntu上部署OpenClaw并搞定局域网访问的文章就介绍到这了,更多相关Ubuntu部署OpenClaw内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

小讯
上一篇 2026-03-26 20:09
下一篇 2026-03-26 20:07

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/246428.html