OpenClaw Cloudflare Secure

🔒 零信任隧道 · 安全暴露本地服务

通过 Cloudflare Zero Trust Access + Tunnel 安全暴露 OpenClaw WebUI,支持 DNS 自动化管理与最小权限令牌,实现零公网 IP 暴露的远程访问。

收藏
7.2k
安装
2.1k
版本
1.0.0
CLS 安全性认证2026-08-12
点击查看完整报告 >

使用说明

核心用法

本技能提供一套完整的方案,用于在 VPS 上安全暴露 OpenClaw Gateway WebUI。核心架构为Cloudflare Tunnel(cloudflared)+ Cloudflare Zero Trust Access,实现"零公网 IP 暴露"的安全远程访问。

部署流程
1. 可选清理:若曾使用 Tailscale Serve,可先执行 sudo tailscale serve reset 清理

2. 安装 Tunnel:通过 Cloudflare Zero Trust 创建 Tunnel,获取 token,在 VPS 安装 cloudflared 并注册为系统服务

3. DNS 切换:使用配套脚本(cf_dns.pydns_point_hostname_to_tunnel.sh)自动将子域名指向 Tunnel 的 CNAME(<tunnel-uuid>.cfargotunnel.com),支持 A/AAAA/CNAME 记录的自动清理与重建

4. 服务绑定:在 Cloudflare 控制台将公网域名映射到本地服务(http://127.0.0.1:18789

5. 访问控制:创建 Access Application,配置"Allow 特定邮箱 + Block 所有人"的双层策略

显著优点

  • 零公网暴露:源站无需公网 IP,流量经 Cloudflare 边缘网络加密传输
  • 最小权限原则:仅需 Zone:DNS:Edit + Zone:Zone:Read 权限的 API Token,降低凭证泄露风险
  • 自动化友好:提供 Python 脚本和 Bash 工具,支持程序化 DNS 管理
  • 与 Tailscale 兼容:可选清理 Tailscale Serve,便于方案迁移

潜在局限

  • 依赖 Cloudflare 生态:需拥有 Cloudflare 托管的域名和 Zero Trust 订阅(免费版有功能限制)
  • 隧道单点:cloudflared 服务若崩溃,服务即中断,建议配置 systemd 自动重启
  • 延迟敏感场景:流量需绕行 Cloudflare 边缘节点,对延迟极敏感的场景可能不适用

适合人群

  • 拥有 VPS 但无公网 IP 或不愿暴露源站 IP 的用户
  • 需要为团队/个人提供安全远程访问 OpenClaw WebUI 的管理员
  • 追求"零信任"架构、希望最小化攻击面的安全敏感用户

常规风险

  • Token 泄露CLOUDFLARE_API_TOKEN 若被窃取,攻击者可篡改 DNS 记录;建议限制 Token 作用域并定期轮换
  • Access 配置错误:若误将"Block Everyone"置于"Allow"之前或策略逻辑错误,可能导致合法用户被拒或非法访问
  • 本地服务监听范围:OpenClaw WebUI 应仅监听 127.0.0.1,避免直接暴露于 0.0.0.0 导致绕过 Tunnel 的直接访问
  • DNS 传播延迟:切换记录后可能存在短暂不可用窗口

安全解读

核心用法

该Skill专为VPS环境设计,提供一套完整的Cloudflare零信任架构部署方案。核心工作流包含三个关键步骤:首先安装并配置cloudflared守护进程建立加密隧道;其次通过API Token自动化管理DNS记录,将自定义域名指向隧道;最后在Cloudflare Zero Trust控制台配置访问策略,实现基于身份认证的精细访问控制。

技术实现上,Skill采用"隧道+访问控制"双层防护架构。Cloudflare Tunnel(cloudflared)建立从VPS到Cloudflare边缘网络的出站加密连接,彻底消除公网IP暴露风险;Cloudflare Access则作为身份网关,执行邮件白名单验证和全局拦截策略。DNS管理模块支持智能切换——自动清理冲突记录并创建指向隧道UUID的CNAME记录,实现无缝流量迁移。

显著优点

安全架构领先:相比传统反向代理方案,该方案实现"无入口暴露"——VPS无需开放任何公网端口,所有流量通过出站隧道传输,天然免疫DDoS和扫描攻击。Access策略引擎支持多因素认证、设备 posture 检查等企业级能力。

运维体验优化:自动化DNS cutover脚本消除了手工配置DNS的繁琐和出错风险。agent友好的最小权限Token设计(仅需Zone:DNS:Edit+Zone:Zone:Read)大幅降低了凭证泄露的 blast radius,符合云原生安全最佳实践。

供应链可信:依赖项全部来自官方渠道——cloudflared二进制从Cloudflare官方GitHub Release获取,Python脚本仅使用标准库,零第三方依赖污染风险。

潜在缺点与局限性

供应商锁定风险:方案深度绑定Cloudflare生态系统,迁移至其他零信任平台需重构整套架构。对于已部署Tailscale等替代方案的环境,需执行清理步骤才能切换。

网络依赖单一:隧道连通性完全依赖Cloudflare边缘网络稳定性。若Cloudflare服务区域性中断或遭遇路由问题,将直接影响业务可用性。

Token生命周期管理:虽然支持最小权限,但API Token仍属长期有效凭证(除非配置过期时间)。用户需自建轮换机制,否则泄露后影响周期较长。

功能边界明确:Skill聚焦于"暴露-防护"单一场景,不提供证书管理、流量监控、日志审计等配套能力,完整生产部署需额外组件补充。

适合的目标群体

  • 个人开发者/技术爱好者:拥有VPS并希望安全暴露本地服务,追求企业级安全防护但不愿自建复杂基础设施
  • 小型创业团队:需快速搭建受控访问通道,团队规模小、无专职安全运维人员
  • 边缘计算场景:OpenClaw等AI网关需要在隔离网络环境中对外提供受控Web界面
  • DevOps工程师:需要在测试/预发布环境快速搭建符合零信任原则的临时访问通道

使用风险

权限提升风险:脚本执行需sudo权限安装系统服务和守护进程,虽为功能必需,但建议用户在非特权环境先行审查。install_cloudflared.sh从外部下载并执行二进制安装,存在供应链投毒理论风险(尽管来源为官方GitHub)。

凭证管理风险CLOUDFLARE_API_TOKEN作为高敏感度凭证,若泄露可导致DNS记录被恶意篡改(子域名接管、流量劫持)。必须严格遵循最小权限原则,禁止复用具有账户级权限的Token。

DNS操作风险:自动化脚本具备删除现有DNS记录的能力,误配置可能导致生产域名服务中断。建议在执行dns_point_hostname_to_tunnel.sh前备份现有DNS配置。

服务连续性风险:cloudflared作为关键基础设施组件,其进程稳定性直接影响服务可用性。systemd服务配置虽已包含,但用户需自行配置监控告警和自动恢复机制。

OpenClaw Cloudflare Secure 内容

scripts文件夹
手动下载zip · 7.5 kB
cf_dns.pytext/plain
请选择文件