一句话定位:edgetunnel 是把 VLESS / Trojan / Shadowsocks 等代理协议“解码/转发”逻辑放进 Cloudflare Workers/Pages 边缘运行时的单文件隧道与订阅面板项目,核心卖点是免 VPS、靠 CF 边缘入口、带 Web 管理后台和订阅生成。
_worker.js,约 5,857 行。| 模块 | 能力 | 证据/实现点 | 理解 |
|---|---|---|---|
| 入站协议 | VLESS、Trojan、Shadowsocks | README 写明支持;源码有 解析魏烈思请求、解析木马请求、SS AEAD 加解密函数。 | 客户端把流量封装成代理协议,经 WebSocket/gRPC/XHTTP 进入 Worker。 |
| 传输层 | WS、gRPC、XHTTP | 源码入口有 处理WS请求、处理gRPC请求、处理XHTTP请求。 | 适配不同客户端/网络环境;WS 是最常见入口。 |
| 出站转发 | 直连、ProxyIP、SOCKS5/HTTP/HTTPS/TURN/SSTP 链式代理 | forwardataTCP 先尝试直连,失败后按 ProxyIP/链式代理兜底。 | 解决 Cloudflare Worker 出站到部分目标不稳定/不可达问题。 |
| 管理面板 | 登录、配置保存、日志、CF 用量、TG 通知 | /admin 路由,KV 中保存 config.json、tg.json、cf.json。 | 这是 cmliu 分支相对原始 edgetunnel 的重要增强。 |
| 订阅生成 | 混合订阅、Clash/Sing-box/Surge 热补丁、优选 IP | README 与源码中的 Clash订阅配置文件热补丁、Singbox订阅配置文件热补丁、Surge订阅配置文件热补丁。 | 让一个部署自动输出多客户端可用配置。 |
| 伪装首页 | 默认可反代 URL 或返回 nginx/1101 风格页面 | 环境变量 URL,源码 nginx()、html1101()。 | 降低裸露管理/订阅入口的可见性,但不是强安全边界。 |
ADMIN/KEY/UUID 派生或读取 UUID,验证入站协议首包。| 项 | 含义 | 判断 |
|---|---|---|
ADMIN | 后台登录密码;也是无 UUID 时派生 userID 的关键输入之一。 | 必须强密码 太弱会导致订阅与管理入口被撞。 |
KEY | 快速订阅路径密钥;访问 /{KEY} 可快速获取节点。 | 建议设置 默认密钥不应暴露。 |
UUID | 固定 VLESS UUID;不设置时由 ADMIN+KEY 派生。 | 可选 固定后迁移/多端更稳定。 |
KV | Cloudflare KV 命名空间,保存管理面板配置、日志、订阅参数。 | 关键依赖 无 KV 会丢失后台配置能力。 |
PROXYIP | 全局自定义反代 IP。 | 影响可用性 质量决定落地连接成功率。 |
URL | 默认主页伪装地址或 1101 页面。 | 隐藏入口 不能代替访问控制。 |
GO2SOCKS5 | 强制走链式代理的域名名单。 | 进阶项 可对特定站点绕过 Worker 出站限制。 |
| 场景 | 是否适合 | 原因 |
|---|---|---|
| 低成本临时测试、学习边缘运行时 TCP/WebSocket 能力 | 适合 | 部署成本低、代码集中、可观察协议解析与转发逻辑。 |
| 需要一个轻量、多客户端订阅入口 | 适合 | 内置订阅生成和主流客户端适配。 |
| 长期稳定生产代理 | 不建议 | 依赖 Cloudflare 平台策略、Worker 限制、ProxyIP 质量;账号/域名有风控风险。 |
| 高吞吐/低延迟/大流量 | 不适合 | 边缘函数与平台配额不是为持续大流量隧道设计。 |
| 要求隐私强保障 | 谨慎 | 流量路径经过 Cloudflare 与可能的 ProxyIP/链式代理;订阅/日志/配置还可能落 KV。 |
| 需要明确合规、商业 SLA | 不适合 | 项目自身免责声明要求教育/研究用途,且平台 ToS 风险不可忽略。 |
/admin 存在公网;ADMIN/KEY/UUID 如果弱或复用,可能导致配置泄露、订阅被盗用。| 观察 | 含义 |
|---|---|
| 源码头部包含大段“本代码安全/非代理/非隧道”的多语言声明。 | 这更像是规避自动审查的文本,不改变代码实际功能;审计时应以行为为准。 |
| 协议解析、TLS mini client、TURN/SSTP、订阅热补丁都塞进一个 worker 文件。 | 功能强,但维护复杂,安全审计难度高。 |
| 直连失败后有 ProxyIP/代理兜底。 | 提高可用性,但引入第三方出口信任问题。 |
| 默认配置会写入 KV。 | 便于面板管理,但 KV 权限和数据内容需要谨慎。 |
edgetunnel 的价值在“把代理入口下沉到 Cloudflare 边缘,并用面板/订阅把复杂配置包装起来”。它很适合折腾、学习和临时自用;但从稳定性、合规性、安全审计和账号风险看,不适合当长期核心基础设施。