windows、linux、Mac、docker下安全性配置模版

在所有环境下进行测试,为了保证配置的一致性和迁移的安全性,建议采用"一套 config.yaml 模板 + 不同环境注入变量"的方案。

以下是针对各环境的实操手册:

  1. 通用配置文件准备 (config.yaml)

无论在哪个平台,OpenClaw 的配置文件中关于飞书的部分应统一写成:

csharp 复制代码
lark:
  app_id: ${LARK_APP_ID}
  app_secret: ${LARK_APP_SECRET}
  encrypt_key: ${LARK_ENCRYPT_KEY}  # 选填,若开启事件加密需填
  verification_token: ${LARK_VERIFICATION_TOKEN} # 选填

  1. Docker 环境(云服务器/本地 NAS)
    这是最推荐的测试起点,因为环境最纯净。
  • 创建 .env 文件(存放在 docker-compose.yml 同级目录):
csharp 复制代码
LARK_APP_ID=cli_a1b2c3d4
LARK_APP_SECRET=shshxxxxxxxx
  • 编写 docker-compose.yml:
csharp 复制代码
services:
  openclaw:
    image: openclaw/openclaw:latest
    env_file: .env  # 自动加载上面的变量
    volumes:
      - ./config.yaml:/app/config.yaml
  • 启动:docker-compose up -d
  1. Linux / macOS 环境(生产/服务器)
    利用 Shell 配置文件实现持久化。
  • 操作命令:

1. 打开配置文件 (Mac用.zshrc, Linux通常用.bashrc)

csharp 复制代码
nano ~/.zshrc 

2. 在末尾添加

csharp 复制代码
export LARK_APP_ID="你的ID"
export LARK_APP_SECRET="你的Secret"

3. 生效

csharp 复制代码
source ~/.zshrc

4. 运行 OpenClaw

csharp 复制代码
python3 main.py
  1. Windows 环境(个人 PC)
    通过系统属性设置,避免在脚本中留下痕迹。
  • 图形化操作:
  1. 搜索"编辑系统环境变量" -> "环境变量"。
    2. 在"用户变量"下新建 LARK_APP_ID 和 LARK_APP_SECRET
  • 命令行验证(设置完需重启终端):
csharp 复制代码
echo $env:LARK_APP_ID  # PowerShell 验证
  1. 云服务器原生(systemd 守护进程)
    为了保证机器人 7x24 小时在线,建议配置为服务。
  • 创建服务文件:sudo nano /etc/systemd/system/openclaw.service
csharp 复制代码
[Unit]
Description=OpenClaw Lark Bot

[Service]
User=root
WorkingDirectory=/path/to/openclaw

关键点:在此注入环境变量

csharp 复制代码
Environment="LARK_APP_ID=cli_xxx"
Environment="LARK_APP_SECRET=xxx"
ExecStart=/usr/bin/python3 main.py
Restart=always

[Install]
WantedBy=multi-user.target
  • 启动:sudo systemctl start openclaw

🚀 全环境测试自检表

在开始之前,请确保完成以下"最后一步":

  1. 内网穿透(本地电脑必做):由于飞书需要向你的服务器发送 Webhook,如果你在本地(Windows/Mac/非公网 Linux)测试,必须使用 cpolar 或 ngrok 将本地端口映射到公网,并在飞书后台填入该公网 URL。
  2. IP 白名单(云服务器必做):在飞书开发者后台的"安全设置"中,填入你云服务器的 公网 IP。
  3. 日志脱敏:启动后观察首行日志,确保没有打印出包含 cli_ 或 secret 的完整字符串。
相关推荐
一晌小贪欢2 小时前
Python魔法:列表与字典推导式深度解析
开发语言·windows·python·列表推导式·python列表·python字典·字典推导式
2401_836554222 小时前
在CentOS 7上完整安装Conda(Miniconda)避坑指南
linux·centos·conda
yiwenrong2 小时前
CentOS 6与CentOS 7的区别
linux·运维·centos
JuneXcy2 小时前
node(1)
linux·node.js·编辑器
网硕互联的小客服2 小时前
Centos 系统开通后数据盘如何挂载,方法与步骤?
linux·服务器·网络·自动化
Luna-player2 小时前
Linux 用户、用户组及权限管理,相关个人学习笔记
linux·笔记·学习
十年编程老舅2 小时前
吃透 Linux 内核 IO 体系:块缓存与页缓存的核心设计与实现逻辑
linux·数据库·c++·spring·后端技术·页缓存
晨非辰2 小时前
Makefile构建哲学:从依赖推导到自动化编译,掌握大型项目的构建逻辑,告别手动编译焦虑
linux·运维·服务器·c++·人工智能·后端·自动化
00后程序员张2 小时前
iOS开发者工具有哪些?Xcode、AppUploader(开心上架)、Fastlane如何使用
android·macos·ios·小程序·uni-app·iphone·xcode