首页 / OpenClaw 教程 / 网关安全:谁能碰你的 OpenClaw

OpenClaw 教程

网关安全:谁能碰你的 OpenClaw

本教程共 26 篇 · 第 9 篇 · 更新于 2026-07-27 · 约 4 分钟阅读

OpenClaw网关安全访问令牌沙箱审计白名单

9. 网关安全:谁能碰你的 OpenClaw

本节目标:明白 OpenClaw 的安全默认假设、控制台和网关怎么用令牌守住、怎么一键自查隐患,以及用沙箱和白名单防止 AI 越权乱动你的电脑。

先认清它的假设

OpenClaw 默认是个人助手信任模型

大白话:它假定用的人就是你一个操作员,不是给一群陌生人分账号的多租户系统。好处是配置简单;代价是它不会像企业 SaaS 那样做严格的租户隔离。

所以最关键的第一个原则:

Warning

别把控制台或网关直接暴露到公网。它是给你自己用的,不是给全世界用的。

守好控制台的门

控制台在 http://127.0.0.1:18789/。要进这个门,靠两样东西:

  • 访问令牌 gateway.auth.token(环境变量 OPENCLAW_GATEWAY_TOKEN)。
  • 密码 gateway.auth.password(环境变量 OPENCLAW_GATEWAY_PASSWORD)。

配置长这样:

{
  "gateway": {
    "port": 18789,
    "auth": {
      "token": "${OPENCLAW_GATEWAY_TOKEN}",
      "password": "${OPENCLAW_GATEWAY_PASSWORD}"
    }
  }
}

令牌和密码同样建议走环境变量,别明文写进配置文件。

Tip

想从远程服务器访问控制台?别直接开端口给公网。用 SSH 隧道最稳:

ssh -N -L 18789:127.0.0.1:18789 user@你的服务器

然后本地浏览器开 http://127.0.0.1:18789/ 即可,流量走加密隧道。

一键自查:安全审计

OpenClaw 自带审计命令,能找出常见隐患:

# 普通检查
openclaw security audit

# 深查(更严格)
openclaw security audit --deep

# 能自动修的,让它修
openclaw security audit --fix

它会看令牌有没有设、密码是不是太弱、端口是不是裸奔、权限是不是开太大等等。建议每次大改配置后跑一遍。

Note

--fix 只会动它明确能安全修复的项,不会乱改你的业务配置。但跑之前备份一下总没错:openclaw config file 能查到配置文件位置。

防越权:沙箱隔离

AI 能碰你电脑,这是 OpenClaw 的强项,也是风险点。沙箱(Sandbox)就是给它的”活动范围”划界。

开关在 agents.defaults.sandbox.mode

  • off:不隔离,AI 直接用你本机环境。
  • non-main:除了默认 main 智能体,其余都进沙箱。
  • all:全部进沙箱,最严。

还能限制它对工作区的读写:

{
  "agents": {
    "defaults": {
      "sandbox": {
        "mode": "non-main",
        "workspaceAccess": "rw"
      }
    }
  }
}

workspaceAccess 三个档:none(只读外界)、ro(工作区只读)、rw(可读写)。

不确定某条规则会怎么生效?跑:

openclaw sandbox explain

它会用人话解释当前沙箱策略。

防乱动:工具策略

工具策略决定 AI 能调用哪些”本领”。常用档:

  • coding:本地读写、跑命令等开发能力,大多场景够用(推荐)。
  • minimal:最小权限,只留最基础能力,适合高安全或共享机器。
  • messaging:在 coding 之上额外允许”主动发消息”,适合让 AI 在群里回话。
openclaw config set tools.profile coding
openclaw gateway restart
Tip

公网或多人环境,优先 coding,并配合最小暴露。需要让 AI 在群里发言时,再换 messaging;用完切回 coding

防陌生人:白名单

就算网关开着,你也可以规定”谁能给我发指令”。这是渠道级的白名单:

{
  "channels": {
    "telegram": {
      "allowFrom": ["123456789"],
      "groupAllowFrom": ["-1001234567890"]
    }
  }
}
  • allowFrom:哪些用户 ID 能私聊你。
  • groupAllowFrom:哪些群组能触发。
  • hooks.allowedAgentIds:哪些智能体能被外部钩子唤起。
Note

沙箱管”AI 能碰什么”,白名单管”谁能跟 AI 说话”。两道关一起上,才叫最小权限。

一个安全自检清单

每次部署完,照着过一遍:

  1. 令牌和密码都设了,且走环境变量。
  2. 没把 18789 端口直接对公网开放。
  3. 跑过 openclaw security audit --deep
  4. 工具策略是 coding,不是 full
  5. 敏感渠道配了 allowFrom 白名单。

都过了,基本就稳了。

Note

本书基于 npm 上 2026.7.1-2 版本撰写。安全相关的命令和默认值可能随版本调整,以你手上版本的官方文档为准。