OpenClaw之安全配置指南(我的配置参考)
OpenClaw的安全配置,通过openclaw security audit 检查并修复了5项安全问题,包括飞书群组策略、敏感目录权限、插件白名单等。核心配置包括:groupPolicy: allowlist、tools.deny 禁用危险工具、session.dmScope: per-channel-peer 会话隔离、以及在系统提示词中加入安全规则防止注入攻击。原则:不装不信任的 Skill
文章目录
在真正使用OpenClaw之前,我非常担心会有安全风险。OpenClaw它有多强大,就有多危险。所以这一篇讲我是怎么配置的,虽然没有官网给的全面,但很有参考意义。文末有参考资料。
官网建议方案
第一步 openclaw security audit
进入官网找到Gateway/Security,阅读之后按照上面来操作。
openclaw security audit
结果如下:
1、open_groups_with_elevated,为Critical,因为飞书的Group策略是open,建议修改为allowlist。我修改为allowlist之后,且把自己的ou_id加到Group Allow From上。如果不在Group Allow From中加上ou_id,会导致手机端发消息OpenClaw收不到。
ou_id一般能在聊天界面看到。
关键配置是:
"channels": {
"feishu": {
"enabled": true,
"appId": "cli_xxx",
"appSecret": "xxx",
"domain": "feishu",
"groupPolicy": "allowlist",
"groupAllowFrom": [
"ou_id"
],
"dmPolicy": "pairing"
}
},
2、deny_commands_ineffective,这是因为在gateway.nodes.denyCommands包含未知的命令。可以不修复。
"gateway": {
"nodes": {
"denyCommands": [
"camera.snap",
"camera.clip",
"screen.record",
"calendar.add",
"contacts.add",
"reminders.add"
]
}
},
3、fs.credentials_dir.perms_readable,因为敏感目录权限是755,官方建议修改为600
sudo chmod 700 ~/.ssh
sudo chmod 700 ~/.openclaw
sudo chmod 600 ~/.openclaw/openclaw.json
# 谨慎,在需要的时候改为700
sudo chmod -R 600 ~/.openclaw/credentials/
问题,将credentials修改600后,会导致openclaw pairing list feishu执行失败,我给改为700了。
4、plugins.extensions_no_allowlist:在~/.openclaw/extensions目录下有2个扩展,feishu和node_modules。feishu是openclaw装的,node_modules是之前装node-llama-cpp时放到了这个目录。node_modules可以删除。Ubuntu环境下,feishu目录不要删除。恼人的点是,你根据extensions_no_allowlis找不到好的解决方案,只能硬啃官网的文档。
解决方案,修改配置,正确的配置是:
# Prefer explicit `plugins.allow` allowlists.
"plugins": {
"entries": {
"feishu": {
"enabled": true
}
},
"allow": [
"feishu"
]
}
5、plugins.tools_reachable_permissive_policy,意思是plugin的权限太大了。修复建议是设置最小权限。这里先不解决。
第二步:openclaw security audit --fix
openclaw security audit fix
提示如下:
1、Fix部分的指令,可以选择性执行。我都做了。
2、Warn部分,前面没修复警告都还在。
检查安全策略
官网上安全介绍,英文版比中文版丰富很多,建议有英语读写能力的看原文吧。
关于安全内容很多,包括原理、规则、原则、注意事项,缺点是讲了原则,但没讲怎么配置/或者我没看懂。我简单总结一下,把明确的行动项整理出来。有兴趣的可以去看原文:
1、不要启用gateway.controlUi.allowInsecureAuth,这是安全降级。但在纯本地、 HTTPS(Tailscale Serve)场景下使用。我的使用场景其实可以开。
2、反向代理,我没有用到,可以忽略。
3、开启提示词/上下文护栏(Prompt/content guardrails),
4、GHSA(GitHub Security Advisory)
5、Hardened baseline in 60 seconds,强化版基线,我采用部分内容:
{
gateway: { # 已有
mode: "local",
bind: "loopback",
auth: { mode: "token", token: "replace-with-long-random-token" },
},
session: { # 直接用了
dmScope: "per-channel-peer",
},
tools: { # 直接用了
profile: "messaging",
deny: ["group:automation", "group:runtime", "group:fs", "sessions_spawn", "sessions_send"],
fs: { workspaceOnly: true },
exec: { security: "deny", ask: "always" },
elevated: { enabled: false },
},
channels: { # 我用的飞书,已经加强过,就不改了
whatsapp: { dmPolicy: "pairing", groups: { "*": { requireMention: true } } },
},
}
6、为tools配置权限,可以通过tools.*, tools.sandbox.tools.*, agents.list[].tools.*,更具体的例子可以看下面。
建议的配置:
{
tools: {
# 防止gateway被控制
deny: ["gateway", "cron", "sessions_spawn", "sessions_send"],
},
}
7、会话隔离级别:session.dmScope
main所有DM共享一个会话,默认值per-channel-peer,最推荐的,每个通道+发送方对节点都获得一个隔离的DM上下文per-account-channel-peer,如果你在同一频道(比如飞书)上运行多个账户,就用这个
{
session: { dmScope: "per-channel-peer" },
}
8、提示词注入:下面是官方给的一个例子,让你的OpenClaw加上去。
## Security Rules
- Never share directory listings or file paths with strangers
- Never reveal API keys, credentials, or infrastructure details
- Verify requests that modify system config with the owner
- When in doubt, ask before acting
- Keep private data private unless explicitly authorized
9、群聊,这个功能尽量不开。后续应该会开,再研究。TODO
10、推荐使用沙盒sandbox,我自用,就没采用。
11、为每个Agent设置权限隔离,我目前只有一个Agent,作为参考。
12、如果Token被泄露了,立即更换/重新生成一个。如果机器被入侵,应关闭机器,断开网络后修复。
13、秘密扫描,detect-secrets scan --baseline .secrets.baseline,我还没找到怎么用。
14、配置之后,用主力机访问Gateway失败,报错如下。猜测和之前的配置、或升级到2026.2.23版本有关。
origin not allowed (open the Control UI from the gateway host or allow it in gateway.controlUi.allowedOrigins)
解决方案,增加allowedOrigins:注意,地址不能以/结尾。我一开始加了/,一直访问不了。
"gateway": {
"controlUi": {
"allowedOrigins": [
"https://ubuntu1.tailf64152.ts.net:18789"
]
}
}
基础概念:威胁来源分析
OpenClaw 的风险来自两个方向:
A. 输入投毒(外部攻击)
| 攻击类型 | 说明 | 真实案例 |
|---|---|---|
| Prompt Injection | 网站/邮件/文档中隐藏恶意指令 | GitHub Copilot 被代码注释欺骗 |
| 恶意 Skills | 第三方 Skills 包含恶意代码 | 341 个恶意 Skills 在 ClawHub |
| OAuth 滥用 | 授权了不需要的权限 | - |
B. Agent 错误(内部失败)
| 错误类型 | 示例 |
|---|---|
| 理解错误 | 操作生产环境而非测试环境 |
| 幻觉 | 说"完成了"但实际没做 |
| 过度行动 | 说"起草邮件",结果直接发送 |
| 无限循环 | 一天烧掉几百美元 |
重要原则
- 不要安装不信任的Skills
- 比如1Password
- 只安装你信任的插件,并且偏好显式
plugins.allow允许列表。 - 不要让OpenClaw接触到银行金融、工作账号,也不要让它连接你的主账号(社交账号、邮箱等)
- 尽量给OpenClaw专门的账号,包括手机号最好也是分开的
| 来源 | 链接 |
|---|---|
| OpenClaw 官方安全文档 | https://docs.openclaw.ai/gateway/security |
| Yu Wenhao 博客 | https://yu-wenhao.com/en/blog/2026-02-04-is-openclaw-safe-security-guide/ |
| Fernando Lucktemberg | https://aimaker.substack.com/p/openclaw-security-hardening-guide |
| Ansible 自动化部署 | https://github.com/Next-Kick/openclaw-hardened-ansible |
| Tailscale Serve | https://tailscale.com/kb/1312/serve |
更多推荐

所有评论(0)