AI 推荐
适合读者:准备把 OpenClaw 长期运行起来,必须处理权限与风险边界的团队。
预计阅读:6 分钟
你将看到:
•OpenClaw 默认是 personal assistant trust model,不是敌对多租户边界。
•生产化核心是 trust boundary、pairing、tool policy、sandbox、SSRF 和审计。
•能否回答“谁能用、能做什么、出事怎么看日志”才是成熟标志。


如果你只想自己本地玩一玩 OpenClaw,前面几篇已经够了。
但只要你准备把它长期开着、接入多个通道,甚至让别人也能和它互动,系统真正危险的时候往往不是“第一次装起来”,而是“它已经看起来很好用,所以你开始默认它可以长期在线”。
这时候安全和运维就不是附加项,而是主线。
这一篇不打算从一堆风险名词开始,而是先给你一个更实用的判断:
什么时候你的 OpenClaw 还只是实验系统,什么时候它才开始接近可长期运行。
一、先定本篇起点和完成标志
你的起点状态
1. 你已经能稳定运行 OpenClaw
2. 你可能已经接了真实通道,甚至有多个 agent
3. 你开始考虑长期在线、多人触达或更高风险工具
本篇完成标志
到最后,你至少应该能回答:
1. 你的 trust boundary 画在哪里
2. 谁能触达哪个 agent
3. 每个 agent 能做什么、不能做什么
4. 出问题后去哪里看日志、怎么止损
二、先给最重要的前提:OpenClaw 不是敌对多租户边界
官方安全文档一开头就给了一个必须先接受的前提:
OpenClaw 采用的是 personal assistant trust model,而不是 hostile multi-tenant security boundary。
翻译成工程语言就是:
• 它适合一个可信边界内的个人或同质团队使用
• 它不适合让互不信任、彼此对抗的多方共享同一个 gateway 或 agent
这一点如果一开始没想明白,后面所有权限设计都会错位。
三、先收紧一个最小安全基线
如果你今天只想先做一轮最小生产化收口,优先做这 4 件事:
1. Gateway 默认只绑定 loopback
2. DM 先用 pairing 或 allowlist,群聊默认 require mention
3. 高风险 agent 开 sandbox,并收紧 tool policy
4. 确认日志和 session transcript 的位置
这 4 件事没做完之前,不建议继续放大入口。
四、最重要的安全结论:先划 trust boundary,再谈智能
官方文档里反复强调一个思想:访问控制必须先于智能。
你应该优先决定:
1. 谁能给这个 Gateway 发消息
2. 哪些群聊可以触发它
3. 哪些 agent 拥有什么工具权限
4. 哪些入口可以接触到本地文件、shell、浏览器和节点设备
如果这些边界没先画清楚,再聪明的 Agent 也会变成风险放大器。
五、生产环境的第一条建议:默认只绑定 loopback
OpenClaw 默认绑定 127.0.0.1,这是非常正确的起点。
在你真正理解远程接入、鉴权、反向代理和 Tailscale 之前,不要急着把 Gateway 暴露到公网。文档里更推荐的远程方式是:
• Tailscale / VPN
• SSH tunnel
而不是简单把端口直接放开。
六、DM 与群聊的安全,不是同一个问题
OpenClaw 文档把这件事拆得很细,这很专业。
1. DM
更推荐 pairing 或 allowlist,而不是 open 模式。
2. 群聊
应该尽量启用 mention gating,也就是必须显式提到 bot 才触发。
为什么?因为群聊天然更容易出现:
• prompt injection
• 误触发
• 社工式诱导
• 意外泄露内部路径、状态和内容
如果你在群里默认全量响应,那不是智能,是裸奔。
七、Multi-Agent 时代,安全不该只靠“自觉”
OpenClaw 现在已经支持 per-agent sandbox 与 tool policy,这使得你可以给不同 agent 明确分配不同访问级别。
文档里给出的典型模式很值得直接借鉴:
1. Personal agent
• 不开 sandbox
• 全权限
• 适合自己私用
2. Family / work agent
• 开启 sandbox
• 工具只保留 read 等只读能力
• workspace 设为只读
3. Public agent
• sandbox 打满
• 不给 filesystem / shell / browser / patch 等高风险工具
• 只保留消息相关能力
这才是生产系统里真正该做的权限分层。
八、不要把 workspace 当安全边界,真正的边界是 sandbox + tools
这是很多人最容易犯错的地方。
workspace 只是默认工作目录,不能替代安全隔离。真正有效的边界来自:
1. sandbox.mode
2. workspaceAccess
3. tools.allow
4. tools.deny
例如一个只读 family agent,可以配置成:
• sandbox.mode: "all"
• scope: "agent"
• workspaceAccess: "ro"
• 只允许 read
• 拒绝 write、edit、apply_patch、exec、browser
这时它才算接近一个受限 agent。
九、浏览器能力默认很强,SSRF 必须明确考虑
OpenClaw 文档还特别提到浏览器 SSRF policy。默认模型偏 trusted operator 模式,允许访问私网目标;如果你希望更严谨,应显式把:
browser.ssrfPolicy.dangerouslyAllowPrivateNetwork: false
再配上 hostname allowlist。
这个配置的意义在于:如果你的 agent 具备 browser 能力,却又会处理外部输入,那它就可能被诱导去访问你原本不希望触达的内网资源。
十、长期运行一定要把审计和事故响应当作日常机制
官方安全页给了很实用的审计与处置建议。
几个关键位置要记住:
• Gateway 日志:/tmp/openclaw/openclaw-YYYY-MM-DD.log
• session transcripts:~/.openclaw/agents/<agentId>/sessions/*.jsonl
当出现异常行为时,最基本的处置顺序应该是:
1. 停掉 Gateway 或相关 app
2. 把 gateway.bind 收回 loopback
3. 暂时禁用高风险 DM / group 入口
4. 轮换 gateway token、remote token、模型和 channel 密钥
5. 回看日志和 transcript
6. 重新运行:
openclaw security audit --deep
这个命令不应该等出事才想起来跑,它应该成为日常检查的一部分。
十一、生产化不只是安全,还包括版本节奏管理
从最近几个 release notes 看,OpenClaw 迭代非常快,尤其在:
• context engine / compaction
• 插件 hooks
• 多 agent routing
• onboarding 与 auth
• Web UI 和 channel 行为
这意味着生产环境不能永远停在一个版本不动,但也不能每次无脑追最新。更合理的做法是:
1. 关注 release notes
2. 先在测试环境验证 routing、hooks、security 相关改动
3. 再滚动更新生产实例
十二、最后的判断标准
什么时候你的 OpenClaw 才算接近生产可用?
不是“它今天能回我消息”,而是你能同时回答下面几个问题:
1. 谁能触达它
2. 哪些消息会路由到哪个 agent
3. 每个 agent 能做什么、不能做什么
4. 出问题后日志和会话记录去哪里看
5. 泄露风险出现时你怎么停机、怎么轮换密钥
这五个问题答不出来,OpenClaw 还只是实验系统。
十三、一句话总结
OpenClaw 真正进入生产阶段的标志,不是接了更多通道,也不是加了更多 Skill,而是你开始把它当成一个长期运行、受权限约束、可审计、可收敛风险的系统来管理。
到这个阶段,你运营的已经不是一个“会聊天的工具”,而是一套需要边界、权限和事故响应的在线系统。
参考链接
• Security:
https://docs.openclaw.ai/gateway/security
• Multi-Agent Routing:
https://docs.openclaw.ai/concepts/multi-agent
• Gateway Architecture:
https://docs.openclaw.ai/concepts/architecture
• GitHub Releases:
https://github.com/openclaw/openclaw/releases
这一篇属于 OpenClaw 系列的「深入」阶段。
上一篇:OpenClaw 插件开发:Plugin、Hook、Skill 三层扩展怎么分工
下一篇:本系列已到最后一篇。
夜雨聆风