Skip to content
微笑鼠 A Smiling Quokka
更新于 2026年4月30日

Cloudflare 免费部署 VPN:Edgetunnel 2.0、GitHub Fork 与 Pages 实操

整理 Edgetunnel 2.0 通过 GitHub Fork 接入 Cloudflare Pages、绑定 Workers KV、配置 VLESS/Trojan 和自定义域的流程,并说明免费计划限制与合规风险。

这篇文章是视频教程的文字增强版,整理的是 Edgetunnel 2.0 通过 GitHub fork 仓库接入 Cloudflare Pages、绑定 Workers KV、登录 WebUI,并生成 VLESS 或 Trojan 订阅的核心流程。

重要提醒:Cloudflare 的自助服务条款和平台规则会限制把服务主要用作 VPN、开放代理或类似中转用途。本文只适合作为个人学习、临时实验和架构理解参考。正式使用前,请先阅读 Cloudflare Self-Serve Subscription Agreement 和所在地法律法规;如果你的用途涉及多人共享、商业分发、长期流量转发或规避网络管理,请不要按本文部署。

准备工作

你需要提前准备这些东西:

  • 一个 Cloudflare 账号
  • 一个 GitHub 账号
  • 一个已经托管到 Cloudflare 的域名(可选)

如果只是想体验流程,可以先使用 Cloudflare Pages 默认分配的 pages.dev 域名。更稳定、也更方便隔离的做法是绑定自己的子域名,例如 vpn.example.com

1. Fork 仓库

先登录 GitHub,把 Edgetunnel 2.0 项目 fork 到自己的账号下。

这样做的好处是 Cloudflare Pages 可以直接连接你的仓库,后续项目更新、重新部署和配置排查都更清晰。

alt text alt text

Fork 完成后,进入你自己账号下的仓库页面,确认默认分支和项目文件都正常显示。

2. 连接 GitHub 仓库创建 Pages 项目

进入 Cloudflare 控制台:

Workers & Pages -> Pages -> Create a project -> Connect to Git

授权 Cloudflare 访问 GitHub 后,选择你 fork 出来的 Edgetunnel 2.0 仓库,然后创建 Pages 项目。项目名称建议使用一个新的、未被旧部署污染过的名字,例如:

edt2-lab

如果你之前已经部署过旧版本,遇到 1101 这类运行时错误时,可以优先检查部署日志、环境变量和 KV 绑定;必要时新建一个 Pages 项目重新连接 fork 仓库,避免旧项目配置干扰排查。

部署完成后,Cloudflare 会分配一个临时域名:

https://edt2-lab.pages.dev

这时先不用急着测试订阅,后面还需要设置管理员密码和 KV 绑定。

3. 设置 ADMIN 管理员密码

Edgetunnel 2.0 的后台入口是 /adminADMIN 不再表示后台路径,而是 WebUI 管理员密码。进入 Pages 项目:

Settings -> Environment variables -> Add variable

添加变量:

ADMIN=your-strong-admin-password

密码不要使用 adminpassword、项目名、域名前缀这类容易被猜到的内容,也不要把真实密码写进截图、评论区或群聊里。

保存环境变量后,需要重新部署一次项目,新的部署版本才会读取到 ADMIN

4. 创建 Workers KV 命名空间

Edgetunnel 2.0 的 WebUI 需要用 KV 保存配置、订阅数据和部分面板信息。进入 Cloudflare 控制台:

Workers & Pages -> KV -> Create namespace

命名空间名称建议用简单可识别的名字,例如:

EDT2

创建后不用手动写入数据,后面把它绑定到 Pages 项目即可。Pages 的绑定规则可以参考官方文档:Pages Functions Bindings

5. 绑定 KV 到 Pages 项目

继续进入 Pages 项目设置:

Settings -> Functions -> KV namespace bindings -> Add binding

绑定名称必须按项目要求填写。视频流程和 Edgetunnel 常见部署方式里通常使用:

KV

然后选择前面创建的 EDT2 命名空间。

保存后再次重新部署项目。如果没有重新部署,页面可能仍然读不到 KV,后台也可能无法保存配置。

6. 打开后台面板

部署完成后,访问:

https://edt2-lab.pages.dev/admin

如果已经绑定了自定义域,也可以访问:

https://vpn.example.com/admin

输入前面设置的 ADMIN 密码进入 WebUI。进入后先检查面板是否能保存配置;如果保存失败,通常先回到 Pages 设置里确认 KV 绑定名和 KV 命名空间是否正确,然后重新部署。

7. 配置协议和订阅

Edgetunnel 2.0 的主要配置可以在 WebUI 里完成,不必每次都回到 Pages 环境变量里改参数。适合先关注这些基础项:

  • 协议选择:按客户端兼容性选择 VLESS 或 Trojan,不确定时先用你客户端支持最稳定的协议。
  • 订阅生成:面板会生成订阅链接或节点配置,客户端里通常从“订阅”“从 URL 导入”或“手动添加节点”入口导入。
  • 优选模式:可以使用随机优选,也可以填入自定义优选 IP 或域名。先用少量节点测试,确认连通性和延迟后再扩大配置。
  • 高级功能:Telegram 通知、请求统计、Cloudflare 用量统计等功能可以后续再启用。先完成最小可用部署,排错会更简单。

不要把订阅链接公开发布。订阅链接通常等同于访问凭据,被别人拿到后就可能消耗你的免费额度,甚至触发滥用投诉和账号风控。

8. 绑定自定义域

在 Pages 项目里进入:

Custom domains -> Set up a custom domain

填写你准备好的子域名:

vpn.example.com

自定义域不是必需项,pages.dev 已经可以用于学习测试。如果要绑定域名,建议使用独立子域名,不要直接使用主站根域名。

如果这个域名已经由 Cloudflare 托管,控制台通常会自动创建或提示你创建对应 DNS 记录。更多细节可以看官方文档:Pages Custom Domains

绑定完成后,等状态变成 Active,再使用自定义域访问后台和订阅链接。

客户端导入

打开你的代理客户端,找到订阅或节点导入入口,把面板生成的订阅 URL 粘贴进去。导入后先只做连通性测试:

  • 能否更新订阅
  • 能否连接节点
  • 是否频繁超时
  • 是否出现 Cloudflare 错误页
  • 免费计划额度是否异常消耗

如果只是学习部署流程,测试完成后建议关闭项目或删除订阅,不要长期裸跑。

常见问题

问题检查方向
1101Pages Functions 运行时错误,先看部署日志和函数日志;如果旧项目反复异常,可以新建 Pages 项目重新连接 fork 仓库。
1027Workers 免费计划或路由相关限制,检查账号计划、请求量和项目配置。
522回源连接超时,检查自定义域 DNS、代理状态和项目是否正常部署。
/admin 登录失败ADMIN 是否是管理员密码,是否写错环境变量,保存后是否重新部署。
无法保存配置KV 绑定名称是否准确为大写 KV,是否绑定到了正确的 EDT2 命名空间。
修改变量后没变化Pages 环境变量或 KV 绑定修改后,需要重新部署才会进入新的部署版本。
自定义域不生效Pages 自定义域状态是否 Active,DNS 记录是否冲突。
客户端无法导入订阅链接是否复制完整,客户端是否支持对应协议格式。

更稳妥的替代方案

如果你的目标不是研究第三方代理项目,而是解决真实远程访问需求,可以优先考虑这些官方或更可控的方案:

  • Cloudflare Tunnel:适合把内网 Web 服务、安全面板或 SSH 入口暴露到 Zero Trust 后面。
  • Cloudflare One / WARP Client:适合团队设备接入、身份认证和访问策略。
  • 自建 VPS + 标准 VPN:适合你需要完整控制网络出口、日志、带宽和合规边界的场景。
  • Tailscale / Headscale / NetBird:适合个人设备组网和私有网络互联。

把 Cloudflare 免费计划当作学习实验可以,但不要把它当成长期、稳定、无限量的代理基础设施。

风险先说清楚

这类方案看起来是“免费部署”,但免费不等于无限制。

  • 条款风险:Cloudflare 可能限制或停止明显的 VPN、代理、中转流量用途。
  • 账号风险:异常流量、滥用投诉、被公开分享的节点或订阅链接,都可能导致项目被封禁或账号受限。
  • 限额风险:Cloudflare Workers 和 Pages Functions 有请求数、CPU、子请求和运行时限制,具体以 Workers Limits 为准。
  • 代码风险:Edgetunnel 是第三方项目,部署前应阅读源码、Issue 和 README,确认你理解它会生成哪些入口、配置、订阅内容和统计数据。
  • 域名风险:不要把主站根域名直接用于实验。建议新建独立子域名,便于随时下线、隔离和排查问题。

如果你想做的是内网访问、远程运维或团队零信任接入,优先看 Cloudflare 官方的 Cloudflare One Connectivity Options,例如 Cloudflare Tunnel、WARP Client 或 Zero Trust 方案。