本地部署openclaw需五步安全加固:一、强制环境隔离,禁用主力机部署,须用专用设备或虚拟化;二、绑定127.0.0.1监听并启用token认证;三、以最小权限用户运行并配置文件白名单;四、密钥加密存储,禁用明文凭证;五、启用提示词过滤与输出人工复核,输入数据须脱敏。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您已本地部署 OpenClaw,但担心其运行过程中导致敏感数据泄露或被恶意利用,则可能是由于环境未隔离、权限未收敛、网络暴露面过大或凭证明文存储所致。以下是针对本地部署场景的隐私保护与安全加固操作步骤:
一、强制环境隔离:切断与主力系统的连接
OpenClaw 具备文件系统读写、Shell 执行及浏览器控制能力,若直接运行于存有工作文档、账号密码或企业数据的主力机上,一旦配置失误或遭提示词注入攻击,将直接危及核心资产。必须通过物理或逻辑方式实现运行环境与日常使用环境的硬性分离。
1、为 OpenClaw 专用准备一台旧手机、备用笔记本或闲置树莓派,仅用于运行该服务,严禁在主力办公电脑、含公司源码的开发机或存有身份证/银行卡照片的设备上部署。
2、如使用 PC 部署,必须启用虚拟化层:Windows 用户启用 WSL2 或 VirtualBox,macOS/Linux 用户启用 Docker 或 QEMU,禁止裸机(bare-metal)直接运行。
3、在容器或虚拟机中,仅挂载必要目录(如 /opt/openclaw/data/input 和 /opt/openclaw/data/output),禁止映射家目录、下载目录或桌面路径。
二、绑定本地监听并关闭公网暴露
OpenClaw Gateway 默认监听 0.0.0.0:18789,即对所有网卡开放,极易被局域网内其他设备探测并发起 WebSocket 劫持攻击。必须将其通信范围严格限制在本机进程间,杜绝任何形式的远程直连可能。
1、编辑配置文件 ~/.openclaw/openclaw.json,定位 "gateway" 区块,将 "bind" 值明确修改为:"127.0.0.1"。
2、确认 "auth" 区块中 "enabled" 字段值为 true,且 "strategy" 为 "token",禁用 "none" 认证模式。
3、执行命令验证监听状态:netstat -tuln | grep 18789(Linux/macOS)或 netstat -ano | findstr 18789(Windows),输出中仅允许出现 127.0.0.1:18789,若含 0.0.0.0:18789 或公网 IP 则立即修正配置并重启服务。
三、实施最小权限账户与文件系统白名单
以高权限账户(如 root、Administrator)运行 OpenClaw,等同于向任意潜在漏洞授予系统最高控制权。必须剥夺其越界操作能力,使其仅能访问预设资源,从根源阻断误删、提权或横向渗透可能。
1、Linux/macOS 下新建专用用户:sudo adduser openclaw --disabled-password,随后仅授予该用户对部署目录(如 /opt/openclaw)的读写执行权限,禁止加入 sudo 组。
使用聊天补全、重试、结构化输出和明确的 User-Agent 标头运行 AIMLAPI LLM 与推理工作流,适用于 Codex 对 AIMLAPI 模型进行脚本化提示/推理调用的场景。
2、在配置文件中启用文件系统白名单机制,添加如下字段:
"security": {"fileSystemWhiteList": ["/opt/openclaw/data/input", "/opt/openclaw/data/output"]}。
3、手动检查当前运行用户:ps aux | grep openclaw,确保 USER 列显示为 openclaw 而非 root;若为 root,立即停止服务并以专用用户重启。
四、密钥与凭证加密存储,禁用明文配置
API 密钥、模型 Token、邮箱密码等一旦以明文形式写入 openclaw.json 或环境变量,将极易被日志泄露、进程内存转储或插件窃取。必须剥离敏感信息,改用加密载体或运行时注入方式管理。
1、删除配置文件中所有形如 "apiKey": "sk-xxx" 或 "password": "123456" 的明文字段,绝不保留任何凭证在 JSON 文件中。
2、改用环境变量注入:启动前执行 export OPENCLAW_API_KEY="$(cat ~/.secrets/api_key.enc | openssl enc -d -aes-256-cbc -pbkdf2 -salt -pass file:~/.secrets/key.pass)",确保密钥文件 ~/.secrets/ 目录权限为 700,且仅属主可读。
3、若使用 Docker,通过 --secret 参数挂载密钥,而非 -e 环境变量方式传递。
五、启用输入过滤与输出验证机制
OpenClaw 可能因处理不可信网页、PDF 或 Word 文档而触发提示词注入攻击,导致其在用户无感知下执行恶意指令。必须在数据流入与结果流出两个关键节点设置内容校验闸门,防止敏感信息外泄或非法操作被执行。
1、开启内置提示词过滤功能,在配置中添加:"security": {"promptFilterEnabled": true},自动拦截含 curl、wget、exec、rm -rf、system() 等高危关键词的输入。
2、对所有生成类输出(尤其是涉及文件路径、命令行、URL 或 JSON 结构的内容),强制启用人工复核开关:"security": {"outputReviewRequired": ["file_write", "shell_exec", "http_post"]}。
3、处理前对原始数据脱敏:身份证号替换为 ***XXXXXX****XXX,手机号替换为 138****1234,银行账号中间四位统一掩码,确保输入至 OpenClaw 的文本不含任何真实敏感字段。









