在真正使用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
Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐