# Cloudflare Worker 2 Vless & Sub 这是一个基于 Cloudflare Worker 平台的脚本,在原版的基础上修改了显示 VLESS 配置信息转换为订阅内容。使用该脚本,你可以方便地将 VLESS 配置信息使用在线配置转换到 Clash 或 Singbox 等工具中。 - 基础部署视频教程:https://www.youtube.com/watch?v=LeT4jQUh8ok - 快速部署视频教程:https://www.youtube.com/watch?v=Ea3wb5G08l4 ***最佳推荐!!!*** - 进阶使用视角教程:https://www.youtube.com/watch?v=s91zjpw3-P8 Telegram交流群:[@CMLiussss](https://t.me/CMLiussss) # 风险提示 - 已通过提交虚假的节点配置给订阅服务,避免节点配置信息泄露。***[#6](https://github.com/cmliu/edgetunnel/pull/6) 感谢 [fatkun](https://github.com/fatkun)*** - ~~当您使用 `let sub = 'sub.cmliussss.workers.dev';` 等非空参数时,您的worker节点配置将通过指定的订阅生成器创建完整的节点订阅信息。这种方式确实便捷,但同时意味着您的节点配置信息将被发送给订阅服务的提供者。~~ - ~~如果您对此存有顾虑,可以通过将 `let sub = '';` 设置为空值,以保持您的edgetunnel节点配置的私密性。但这种方式需要您自行手动选择优选IP或域名,却更能保障你的信息安全;~~ - 另外,您也可以选择自行部署 [WorkerVless2sub 订阅生成服务](https://github.com/cmliu/WorkerVless2sub),这样既可以利用订阅生成器的便利,~~又能有效控制您的节点信息不被外泄。~~ ## Workers 部署方法 [视频教程](https://www.youtube.com/watch?v=LeT4jQUh8ok&t=83s) 1. 部署 Cloudflare Worker: - 在 Cloudflare Worker 控制台中创建一个新的 Worker。 - 将 [worker.js](https://github.com/cmliu/edgetunnel/blob/main/_worker.js) 的内容粘贴到 Worker 编辑器中。 - 将第 7 行 `userID` 修改成你自己的 **UUID** 。 2. 访问订阅内容: - 访问 `https://[YOUR-WORKERS-URL]/[UUID]` 即可获取订阅内容。 - 例如 `https://vless.google.workers.dev/90cd4a77-141a-43c9-991b-08263cfe9c10` 就是你的订阅地址。 3. 给 workers绑定 自定义域: - 在 workers控制台的 `触发器`选项卡,下方点击 `添加自定义域`。 - 填入你已转入 CloudFlare 域名解析服务的次级域名,例如:`vless.google.com`后 点击`添加自定义域`,等待证书生效即可。 - **如果你是小白,你现在可以直接起飞,不用再往下看了!!!**
「 我不是小白!我真的真的不是小白!我要玩花活!我要开启高端玩法! 」 4. 使用自己的`优选域名`/`优选IP`的订阅内容: - 如果你想使用自己的优选域名或者是自己的优选IP,可以参考 [WorkerVless2sub GitHub 仓库](https://github.com/cmliu/WorkerVless2sub) 中的部署说明自行搭建。 - 打开 [worker.js](https://github.com/cmliu/edgetunnel/blob/main/_worker.js) 文件,在第 12 行找到 `sub` 变量,将其修改为你部署的订阅生成器地址。例如 `let sub = 'sub.cmliussss.workers.dev';`,注意不要带https等协议信息和符号。 - 注意,如果您使用了自己的订阅地址,要求订阅生成器的 `sub`域名 和 `[YOUR-WORKER-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `sub` 变量赋值为 workers.dev 分配到的域名。 5. 解决转换订阅的隐私问题: - 搭建反代订阅转换工具,通过随机化服务器地址和节点账号密码,解决用户转换订阅的隐私问题。 - 可以参考[不良林psub项目](https://github.com/bulianglin/psub)自行搭建,视频原理以及教程 https://youtu.be/X7CC5jrgazo - 注意,如果您使用了反代订阅转换工具,要求订阅转换工具的 `subconverter`域名 和 `[YOUR-WORKER-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `subconverter` 变量赋值为 workers.dev 分配到的域名,注意不要带https等协议信息和符号。
## Pages 上传 部署方法 **最佳推荐!!!** [视频教程](https://www.youtube.com/watch?v=Ea3wb5G08l4) 1. 部署 Cloudflare Pages: - 下载 [worker.zip](https://raw.githubusercontent.com/cmliu/edgetunnel/main/worker.zip) 文件,并点上 Star !!! - 在 Cloudflare Pages 控制台中选择 `上传资产`后,为你的项目取名后点击 `创建项目`,然后上传你下载好的 [worker.zip](https://raw.githubusercontent.com/cmliu/edgetunnel/main/worker.zip) 文件后点击 `部署站点`。 - 部署完成后点击 `继续处理站点` 后,选择 `设置` > `环境变量` > **制作**为生产环境定义变量 > `添加变量`。 变量名称填写**UUID**,值则为你的UUID,后点击 `保存`即可。 - 返回 `部署` 选项卡,在右下角点击 `创建新部署` 后,重新上传 [worker.zip](https://raw.githubusercontent.com/cmliu/edgetunnel/main/worker.zip) 文件后点击 `保存并部署` 即可。 2. 访问订阅内容: - 访问 `https://[YOUR-PAGES-URL]/[YOUR-UUID]` 即可获取订阅内容。 - 例如 `https://edgetunnel.pages.dev/90cd4a77-141a-43c9-991b-08263cfe9c10` 就是你的订阅地址。
「 我自己有域名!我要绑定自己的域名!我已经熟练的掌握域名解析! 」 3. 给 Pages绑定 CNAME自定义域:[视频教程](https://www.youtube.com/watch?v=LeT4jQUh8ok&t=851s) - 在 Pages控制台的 `自定义域`选项卡,下方点击 `设置自定义域`。 - 填入你的自定义次级域名,注意不要使用你的根域名,例如: 您分配到的域名是 `fuck.cloudns.biz`,则添加自定义域填入 `lizi.fuck.cloudns.biz`即可; - 按照 Cloudflare 的要求将返回你的域名DNS服务商,添加 该自定义域 `lizi`的 CNAME记录 `edgetunnel.pages.dev` 后,点击 `激活域`即可。 - **如果你是小白,那么你的 pages 绑定`自定义域`之后即可直接起飞,不用再往下看了!!!** -
「 我不是小白!我真的真的不是小白!我要玩花活!我要开启高端玩法! 」 4. 使用自己的`优选域名`/`优选IP`的订阅内容: - 如果你想使用自己的优选域名或者是自己的优选IP,可以参考 [WorkerVless2sub GitHub 仓库](https://github.com/cmliu/WorkerVless2sub) 中的部署说明自行搭建。 - 在 Pages控制台的 `设置`选项卡,选择 `环境变量`> `制作`> `编辑变量`> `添加变量`; - 变量名设置为`SUB`,对应的值为你部署的订阅生成器地址。例如 `sub.cmliussss.workers.dev`,后点击 **保存**。 - 之后在 Pages控制台的 `部署`选项卡,选择 `所有部署`> `最新部署最右的 ...`> `重试部署`,即可。 - 注意,如果您使用了自己的订阅地址,要求订阅生成器的 `SUB`域名 和 `[YOUR-PAGES-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `SUB` 变量赋值为 Pages.dev 分配到的域名。 5. 解决转换订阅的隐私问题: - 搭建反代订阅转换工具,通过随机化服务器地址和节点账号密码,解决用户转换订阅的隐私问题。 - 可以参考[不良林psub项目](https://github.com/bulianglin/psub)自行搭建,视频原理以及教程 https://youtu.be/X7CC5jrgazo - 在 Pages控制台的 `设置`选项卡,选择 `环境变量`> `制作`> `编辑变量`> `添加变量`; - 变量名设置为`SUBAPI`,对应的值为你部署的订阅生成器地址。例如 `psub.cmliucdn.workers.dev`,后点击 **保存**。注意不要带https等协议信息和符号。 - 之后在 Pages控制台的 `部署`选项卡,选择 `所有部署`> `最新部署最右的 ...`> `重试部署`,即可。 - 注意,如果您使用了反代订阅转换工具,要求订阅转换工具的 `SUBAPI`域名 和 `[YOUR-PAGES-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `SUBAPI` 变量赋值为 workers.dev 分配到的域名,注意不要带https等协议信息和符号。
## Pages GitHub 部署方法 [视频教程](https://www.youtube.com/watch?v=LeT4jQUh8ok&t=560s) 1. 部署 Cloudflare Pages: - 在 Github 上先 Fork 本项目,并点上 Star !!! - 在 Cloudflare Pages 控制台中选择 `连接到 Git`后,选中 `edgetunnel`项目后点击 `开始设置`。 - 在 `设置构建和部署`页面下方,选择 `环境变量(高级)`后并 `添加变量` 变量名称填写**UUID**,值则为你的UUID,后点击 `保存并部署`即可。 2. 访问订阅内容: - 访问 `https://[YOUR-PAGES-URL]/[YOUR-UUID]` 即可获取订阅内容。 - 例如 `https://edgetunnel.pages.dev/90cd4a77-141a-43c9-991b-08263cfe9c10` 就是你的订阅地址。 3. 给 Pages绑定 CNAME自定义域:[视频教程](https://www.youtube.com/watch?v=LeT4jQUh8ok&t=851s) - 在 Pages控制台的 `自定义域`选项卡,下方点击 `设置自定义域`。 - 填入你的自定义次级域名,注意不要使用你的根域名,例如: 您分配到的域名是 `fuck.cloudns.biz`,则添加自定义域填入 `lizi.fuck.cloudns.biz`即可; - 按照 Cloudflare 的要求将返回你的域名DNS服务商,添加 该自定义域 `lizi`的 CNAME记录 `edgetunnel.pages.dev` 后,点击 `激活域`即可。 - **如果你是小白,那么你的 pages 绑定`自定义域`之后即可直接起飞,不用再往下看了!!!**
「 我不是小白!我真的真的不是小白!我要玩花活!我要开启高端玩法! 」 4. 使用自己的`优选域名`/`优选IP`的订阅内容: - 如果你想使用自己的优选域名或者是自己的优选IP,可以参考 [WorkerVless2sub GitHub 仓库](https://github.com/cmliu/WorkerVless2sub) 中的部署说明自行搭建。 - 在 Pages控制台的 `设置`选项卡,选择 `环境变量`> `制作`> `编辑变量`> `添加变量`; - 变量名设置为`SUB`,对应的值为你部署的订阅生成器地址。例如 `sub.cmliussss.workers.dev`,后点击 **保存**。 - 之后在 Pages控制台的 `部署`选项卡,选择 `所有部署`> `最新部署最右的 ...`> `重试部署`,即可。 - 注意,如果您使用了自己的订阅地址,要求订阅生成器的 `SUB`域名 和 `[YOUR-PAGES-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `SUB` 变量赋值为 Pages.dev 分配到的域名。 5. 解决转换订阅的隐私问题: - 搭建反代订阅转换工具,通过随机化服务器地址和节点账号密码,解决用户转换订阅的隐私问题。 - 可以参考[不良林psub项目](https://github.com/bulianglin/psub)自行搭建,视频原理以及教程 https://youtu.be/X7CC5jrgazo - 在 Pages控制台的 `设置`选项卡,选择 `环境变量`> `制作`> `编辑变量`> `添加变量`; - 变量名设置为`SUBAPI`,对应的值为你部署的订阅生成器地址。例如 `psub.cmliucdn.workers.dev`,后点击 **保存**。注意不要带https等协议信息和符号。 - 之后在 Pages控制台的 `部署`选项卡,选择 `所有部署`> `最新部署最右的 ...`> `重试部署`,即可。 - 注意,如果您使用了反代订阅转换工具,要求订阅转换工具的 `SUBAPI`域名 和 `[YOUR-PAGES-URL]`的域名 不同属一个顶级域名,否则会出现异常。您可以在 `SUBAPI` 变量赋值为 workers.dev 分配到的域名,注意不要带https等协议信息和符号。
### 变量说明 | 变量名 | 示例 | 备注 | YT | |--------|---------|-----|-----| | UUID | 90cd4a77-141a-43c9-991b-08263cfe9c10 | Powershell -NoExit -Command "[guid]::NewGuid()"| [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=72s) | | PROXYIP | proxyip.fxxk.dedyn.io | 备选作为访问CloudFlareCDN站点的代理节点 | [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=166s) | | SOCKS5 | user:password@127.0.0.1:1080 | 优先作为访问CloudFlareCDN站点的SOCKS5代理 | [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=826s) | | SUB | sub.cmliussss.workers.dev | 内建域名、IP节点信息的订阅生成器地址 | [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=1193s) | | SUBAPI | api.v1.mk | clash、singbox等 订阅转换后端 | [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=1446s) | | SUBCONFIG | [https://raw.github.../ACL4SSR_Online_Full_MultiMode.ini](https://raw.githubusercontent.com/cmliu/ACL4SSR/main/Clash/config/ACL4SSR_Online_Full_MultiMode.ini) | clash、singbox等 订阅转换配置文件 | [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=1605s) | | RPROXYIP | false | 设为 true 即可强制获取订阅器分配的ProxyIP(需订阅器支持)| [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=1816s) | ## Star 星星走起 [![Stargazers over time](https://starchart.cc/cmliu/edgetunnel.svg?variant=adaptive)](https://starchart.cc/cmliu/edgetunnel) ## 已适配自适应订阅内容 - [v2rayN](https://github.com/2dust/v2rayN) - clash.meta([Clash Nyanpasu](https://github.com/keiko233/clash-nyanpasu),[clash-verge](https://github.com/zzzgydi/clash-verge/tree/main),ClashX Meta) - sing-box(SFI) # 感谢 [zizifn](https://github.com/zizifn/edgetunnel),[3Kmfi6HP](https://github.com/3Kmfi6HP/EDtunnel),[Stanley-baby](https://github.com/Stanley-baby)、[ACL4SSR](https://github.com/ACL4SSR)、[SHIJS1999](https://github.com/SHIJS1999/cloudflare-worker-vless-ip),[fatkun](https://github.com/fatkun)