Gateway 暴露面 · 白名单 · 技能审计 · 心跳与模型分档
已经跑通安装、要把 OpenClaw 推到「可对外承诺」阶段的小团队与平台同事,瓶颈往往从「Gateway 起不来」切换成「Gateway 听得太开、通道太多、技能脚本不可审计、心跳把 token 烧穿」。本文按生产视角给出拓扑最小集与密钥边界、暴露面收敛对照表(监听、反代、TLS)、多通道分步上线六步、技能与自动化脚本审计清单,以及心跳调度与模型分档的可写进配置文件的参数思路。装机与 doctor 基线请先看 安装与 Gateway 排障长文;进程守护与 7×24 口径请对照 全天候云端部署;远程链路规范可互链 SSH 与 VNC 接力对照。
从「能跑」到「敢上线」,讨论对象要从功能清单换成责任边界图:Gateway 进程由谁拉起、监听面落在哪张网卡、每个 Channel Adapter 使用哪套凭据、工作区里哪些路径允许技能脚本写入、以及审计日志最终进哪个存储桶。没有这张图,生产事故会表现为「模型变慢了」或「Telegram 不回」,根因却是白名单没配或两个通道共用同一服务账户导致会话串线。
下面五条是评审会上最常见的「口头已对齐、落地全漏项」的缺口。把它们写成检查表并与 安装与 doctor 基线长文 交叉引用:前者保证进程与配置解析正确,本文保证上线后的暴露面与身份模型正确。
Gateway 与 Dashboard 角色未拆分:把管理 UI 与消息入口绑在同一监听地址时,一次误配就会把调试接口和 Webhook 端点一起暴露。生产应明确「只给内网」与「必须经反代」两类角色,并分别验收。
通道凭据共池:Slack、Discord、Telegram 各自 Token 若混在同一环境块或同一密钥文件段落,轮换时极易漏改一条回调。应为每通道建立独立密钥名、独立轮换责任人与独立冒烟用例。
工作区与技能沙箱缺失:未限定技能可写目录时,一次提示词诱导就可能触碰仓库外的敏感路径。上线前应列出允许读写树根,并在 staging 用只读账号演练一轮。
出站 LLM 与工具链无配额视图:生产环境若没有按任务类型拆分模型档位,心跳与人工对话会抢同一密钥与同一速率限制,账单与延迟同时失控。
审计与保留策略空白:监管或客户追问「谁在下指令」时,如果日志里没有稳定 request id 与通道身份映射,只能事后猜。应在架构阶段定义保留天数与脱敏规则。
勾完上述条目后,再进入下一节的暴露面表格:你会明确「要收敛的是 IP 与端口」还是「要收敛的是人与机器人身份」。
2026 年最常见的误配是把 Gateway 直接绑在 0.0.0.0 以便「远程调试方便」,同时又在另一个终端里把 Dashboard 密码写在启动参数里。扫描器与撞库脚本并不关心你是不是内部试点。更稳妥的路径通常是:进程只监听回环或内网接口,由受控反向代理统一 TLS 终止、限流与访问日志,再由白名单约束谁能触发工具调用。
下表可直接贴进变更工单,作为上线前 Gate:每一项都应有「负责人 + 证据截图或配置片段编号」。需要远程桌面与隧道规范时,可对照 SSH 与 VNC 接力长文,避免运维习惯与 Agent 自动化抢同一端口叙事。
| 检查项 | 推荐生产姿态 | 常见翻车信号 | 验收动作 |
|---|---|---|---|
| 监听地址 | 127.0.0.1 或内网 RFC1918 段;禁止默认全网卡暴露 | 公网扫描日志出现陌生探测 | ss/lsof 对照配置;与反代 only-from 规则一致 |
| 反向代理 | 统一 TLS、HSTS、限连接速率与请求体大小 | 大附件打爆 Node 进程 | 压测回调路径;检查超时与 body 限制 |
| 证书与链 | 企业 MITM 环境单独导入信任;自动续期有告警 | 间歇性 TLS handshake fail | curl 与 openssl s_client 双通道验证 |
| 管理面隔离 | Dashboard 仅 VPN 或零信任后可达 | 外部 IP 能打开调试页 | 从未授权网络主动探测应失败 |
| 白名单与速率 | 按用户 ID、工作区或签名令牌分层授权 | 任意人可触发昂贵工具 | 用伪造 sender 做负向测试 |
安全不是「再加一道密码」,而是把管理面、消息面与模型出站画成三张互不重叠的网,再分别验收。
本节解决的是「第二个通道一打开,第一个通道开始丢消息」这类编排问题,不是安装阶段的 doctor 报错。核心策略是:每加一个 Adapter,只改一类配置,并在 staging 用真实 webhook 流量回放一小段样本。开发环境可以宽松,但生产必须收紧白名单、缩短 Token 有效期,并把调试日志级别从 debug 降到 info。
若你尚未完成安装基线,请先回到 安装排障长文 把单通道跑绿,再执行下列六步;否则你会在日志里同时看到配置错误与路由错误。
冻结通道清单:列出要接的 IM 与 Webhook 名称、负责人、预期消息量峰值;未在清单上的入口禁止临时打开。
为每通道分配服务身份:生产环境禁止与个人账户共用 Token;为机器人生成独立密钥并写入密钥管理器字段编号。
分环境回调 URL:staging 与 prod 的 webhook 域名分离,避免一次误配把测试流量写进生产会话。
逐通道冒烟:每接一条通道,发送三类探针:文本、带附件、带斜杠命令;记录 request id 与路由耗时。
并发与队列上限:为高峰场景设置最大并行会话与丢弃策略,防止雪崩时拖死 LLM 账户。
回滚演练:关闭单通道后确认其余通道不受影响;归档配置 diff 作为下次变更基线。
export OPENCLAW_GATEWAY_BIND=127.0.0.1 export OPENCLAW_PUBLIC_BASE_URL=https://hooks.example.com export OPENCLAW_CHANNEL_ALLOWLIST=team-alpha,team-beta export OPENCLAW_LOG_LEVEL=info openclaw gateway start
提示:示例中的键名是占位符,请替换为你们实际使用的配置键;变更后务必在 staging 重跑通道冒烟再推进生产窗口。
AgentSkills 与自定义脚本把 OpenClaw 从「聊天机器人」升级成「能改系统的操作员」,也意味着供应链风险直接进入生产。审计目标不是阅读每一行代码,而是建立可重复的闸门:元数据是否声明权限、脚本是否访问外网、是否在用户不可见时执行 shell、以及升级路径是否可追踪。
下表给出一线平台同事可直接打勾的最小集合;若某项无法勾选,应退回 staging 或限制在只读工作区运行。
| 审计对象 | 必查内容 | 不通过时的动作 |
|---|---|---|
| SKILL 元数据 | 名称、版本、作者来源、声明的工具与白名单路径 | 禁止自动升级;要求上游签名或内部 fork |
| 网络出口 | 是否调用第三方 API、域名列表是否固定 | 加出站代理 ACL 或改为内网镜像 |
| 文件系统 | 读写目录是否超出工作区树根 | 加 chroot 或独立 Linux/macOS 用户 |
| 子进程 | 是否隐式执行 curl/bash/git | 要求显式声明并纳入代码评审 |
| 密钥使用 | 是否从环境变量读取而非写死 | 驳回合并;改用密钥管理器引用 |
| 更新通道 | 技能包来源是否可追溯、是否有校验和 | 冻结版本;仅允许内部制品库 |
注意:不要在生产节点上直接用「一键安装社区技能」而不走审计表;试点期可以,但对外承诺 SLA 前必须回收为受控发布。
生产环境最常见的成本事故不是模型单价上涨,而是重复心跳与重复抓取在同一账户下叠加:cron、通道轮询与 Agent 内部 timer 各跑一套,日志里却都叫「sync」。下面三条可引用口径用于和财务、研发负责人在同一页对话:它们不替代你们的云账单,但能把「感觉贵」拆成可优化项。
| 任务类型 | 推荐档位 | 触发频率上限建议 | 观测指标 |
|---|---|---|---|
| 通道健康探针 | 低开销模型或纯 HTTP 检查 | 分钟级以下需审批 | 失败率与 P95 延迟 |
| 定时汇总 | 中等上下文模型 | 与业务日切对齐 | 输出长度与重试次数 |
| 交互式对话 | 高质量主模型 | 由并发会话上限约束 | 每会话 token 曲线 |
| 工具密集型 | 高推理或长上下文 | 与白名单用户绑定 | 工具调用次数分布 |
当你要把上述参数写进变更管理与 on-call 手册时,常驻节点的稳定性会成为前置条件:笔记本休眠与系统更新会打乱心跳节奏,使账单与告警同时失真。更完整的进程守护、端口与日志口径见 OpenClaw 全天候云端部署;需要算力与租期决策时打开 价格页 与 订购页。
安全提醒:模型分档变更不要只在聊天里通知;走工单并保留配置 diff,避免「有人夜里改了档位却没人知道」。
相比依赖个人设备、共享办公网或临时借用机器,独占、可按地区部署、网络路径可预期的云 Mac 节点更容易把 Gateway、通道与技能审计落在稳定基线上;本地环境在休眠、弹窗与多人会话方面往往难以写入对外 SLA。对于要把 OpenClaw 与自动化链路纳入生产验收、同时控制暴露面与 token 成本的团队,VpsMesh 的 Mac Mini 云端租赁通常是更优解:Apple Silicon 原生、7×24 在线、租期灵活,让你把工程注意力放在白名单、心跳与模型分档而不是机器状态。
全网监听会把管理面与消息入口暴露在更大扫描面上;应优先回环或内网,并配合反向代理、TLS 与白名单。远程接入规范也可参考 SSH 与 VNC 接力长文。
先统一身份与密钥模型:每通道独立 Token、轮换责任人与审计字段一致,再谈消息路由。需要装机基线时先看 安装排障长文。