@QT9277: Brothers, still annoyed by unstable VPNs lately? Today I'm sharing a super practical money-saving tip! You'll never have to pay for a proxy service again! First, you need two things: 1. A Cloudflare account (free to register) 2. A domain name (just a few bucks a year, dirt cheap). Then...
Summary
Share how to use Cloudflare and a domain name with the open-source tool edgetunnel to build a free and stable proxy, suitable for beginners, money-saving and practical.
View Cached Full Text
Cached at: 06/30/26, 03:43 PM
Hey folks, tired of unstable proxy services lately? Today I’m sharing a super practical money-saving trick! From now on, you won’t need to pay for expensive VPN services anymore!
First, you need two things:
- A Cloudflare account (free to register)
- A domain name (costs just a few bucks a year, dirt cheap)
Then, using this open-source tool with some simple setup, you’ll get:
- Unlimited nodes to use freely
- Permanently free, no cost
- Watch YouTube 4K videos without buffering
- Stream Netflix smoothly
- Access ChatGPT without a hitch
Best of all, it’s super beginner-friendly. I tried it myself—just follow the step-by-step tutorial, and you’ll be all set in about ten minutes. And its stability beats those services that cost dozens of dollars a month, since it uses Cloudflare’s own CDN channels with global nodes at your disposal.
I’ve organized the links for you—just follow along:
Tool open-source repo: https://github.com/cmliu/edgetunnel Demo site: https://edt-pages.github.io/admin/ Detailed illustrated tutorial: https://cdn.blog.cmliussss.com/p/edt2/
In short, spend the least money to get the most done! If you’re still paying for VPN services, after reading this post you’ll save a lot.
cmliu/edgetunnel
Source: https://github.com/cmliu/edgetunnel
🚀 edgetunnel 2.1 Admin Panel
Stars (https://github.com/cmliu/edgetunnel/stargazers) Forks (https://github.com/cmliu/edgetunnel/network/members) License (https://github.com/cmliu/edgetunnel/blob/main/LICENSE) Telegram (https://t.me/CMLiussss) YouTube (https://www.youtube.com/watch?v=LeT4jQUh8ok) zread (https://zread.ai/cmliu/edgetunnel) Ask DeepWiki (https://deepwiki.com/cmliu/edgetunnel)
📖 Project Introduction
edgetunnel is an edge computing tunnel decryption solution based on the CF Workers/Pages platform. It efficiently handles network traffic and provides a powerful management panel with flexible node configuration capabilities.
- 🖥️ Demo Site: https://EDT-Pages.github.io/admin
✨ Core Features
- 🛡️ Protocol Support: Supports mainstream protocols like VLESS, Trojan, Shadowsocks, with deep integration of encrypted transmission.
- 📊 Management Panel: Built-in visual backend supporting real-time configuration modification, log viewing, and traffic statistics.
- 🛠️ Flexible Deployment: Fully compatible with CF Workers and CF Pages (GitHub / Upload).
- 🔄 Subscription System: Built-in automatic subscription generation and obfuscation conversion, compatible with mainstream clients (Clash, Sing-box, Surge, etc.).
- ⚡ Performance Acceleration: Supports custom ProxyIP, SOCKS5/HTTP chain proxies, and optimized API to reduce network latency.
- 🌐 Multi-Platform Compatibility: Perfectly adapted for Windows, Android, iOS, macOS, and various soft-router firmware.
💡 Quick Deployment
📖 Detailed Illustrated Tutorial: edgetunnel Deployment Guide (https://cmliussss.com/p/edt2/)
⚠️ Error 1101 Issue: Video Guide (https://www.youtube.com/watch?v=r4uVTEJptdE)
⚙️ Workers Deployment
「 Workers Deployment Text Tutorial 」
-
Deploy CF Worker:
- Create a new Worker in the CF Worker console.
- Paste the content of worker.js (https://github.com/cmliu/edgetunnel/blob/main/_worker.js) into the Worker editor.
- On the left
Settingstab, selectVariables>Add Variable. - Set the variable name to ADMIN, and the value to your admin password. Then click
Save.
-
Bind KV Namespace:
- In the
Bindingstab, selectAdd Binding +>KV Namespace>Add Binding, then choose an existing namespace or create a new one to bind. - Set the variable name to KV, then click
Add Binding.
- In the
-
Assign Custom Domain to Workers:
- In the Worker console’s
Triggerstab, clickAdd Custom Domainbelow. - Enter a subdomain that has already been transferred to CF’s DNS service, e.g.,
vless.google.com. Then clickAdd Custom Domainand wait for the certificate to take effect.
- In the Worker console’s
-
Access the Admin Panel:
- Go to
https://vless.google.com/adminand enter your admin password to log in.
- Go to
🛠️ Pages Upload Deployment
Highly Recommended!!! Illustrated Tutorial (https://cmliussss.com/p/edt2/)
「 Pages File Upload Deployment Text Tutorial 」
-
Deploy CF Pages:
- Download main.zip (https://github.com/cmliu/edgetunnel/archive/refs/heads/main.zip) and don’t forget to Star ⭐!
- In the CF Pages console, select
Upload assets, name your project, clickCreate project, then upload the downloaded main.zip (https://github.com/cmliu/edgetunnel/archive/refs/heads/main.zip) file and clickDeploy site. - After deployment, click
Continue processing site, then selectSettings>Environment Variables> Make > Define variables for production >Add Variable. - Set the variable name to ADMIN, and the value to your admin password. Then click
Save. - Return to the
Deploytab, clickCreate new deploymentin the bottom right, re-upload main.zip (https://github.com/cmliu/edgetunnel/archive/refs/heads/main.zip), then clickSave and deploy.
-
Bind KV Namespace:
- In the
Settingstab, selectBindings>+ Add>KV Namespace, then choose an existing namespace or create a new one to bind. - Set the variable name to KV, then click
Saveand redeploy.
- In the
-
Assign CNAME Custom Domain to Pages: Video Tutorial (https://www.youtube.com/watch?v=LeT4jQUh8ok&t=851s)
- In the Pages console’s
Custom domainstab, clickSet custom domainbelow. - Enter your custom subdomain; do not use your root domain. For example, if your assigned domain is
fuck.cloudns.biz, then enterlizi.fuck.cloudns.bizas the custom domain. - Following CF’s instructions, go to your domain’s DNS provider and add a CNAME record for the custom domain
lizipointing toedgetunnel.pages.dev. Then clickActivate domain.
- In the Pages console’s
-
Access the Admin Panel:
- Go to
https://lizi.fuck.cloudns.biz/adminand enter your admin password to log in.
- Go to
🛠️ Pages + GitHub Deployment
「 Pages + GitHub Deployment Text Tutorial 」
-
Deploy CF Pages:
- Fork this project on GitHub, and don’t forget to Star ⭐!
- In the CF Pages console, select
Connect to Git, choose theedgetunnelproject, then clickBegin setup. - Below
Set build and deployment, selectEnvironment variables (advanced)and clickAdd variable. - Set the variable name to ADMIN, and the value to your admin password. Then click
Save and deploy.
-
Bind KV Namespace:
- In the
Settingstab, selectBindings>+ Add>KV Namespace, then choose an existing namespace or create a new one to bind. - Set the variable name to KV, then click
Saveand redeploy.
- In the
-
Assign CNAME Custom Domain to Pages: Video Tutorial (https://www.youtube.com/watch?v=LeT4jQUh8ok&t=851s)
- In the Pages console’s
Custom domainstab, clickSet custom domainbelow. - Enter your custom subdomain; do not use your root domain. For example, if your assigned domain is
fuck.cloudns.biz, then enterlizi.fuck.cloudns.bizas the custom domain. - Following CF’s instructions, go to your domain’s DNS provider and add a CNAME record for the custom domain
lizipointing toedgetunnel.pages.dev. Then clickActivate domain.
- In the Pages console’s
-
Access the Admin Panel:
- Go to
https://lizi.fuck.cloudns.biz/adminand enter your admin password to log in.
- Go to
🔑 Environment Variables
| Variable Name | Required | Example | Notes |
|---|---|---|---|
| ADMIN | ✅ | 123456 | Admin panel login password |
| KEY | ❌ | CMLiussss | Quick subscription path key; access /CMLiussss to quickly get nodes |
| UUID | ❌ | 90cd4a77-141a-43c9-991b-08263cfe9c10 | Force fixed UUID; only supports UUIDv4 standard format |
| PROXYIP | ❌ | proxyip.cmliussss.net:443 | Global custom reverse proxy IP |
| URL | ❌ | https://cloudflare-error-page-3th.pages.dev | Default homepage camouflage address (can be a webpage URL or 1101) |
| GO2SOCKS5 | ❌ | blog.cmliussss.com,*.ip111.cn,*google.com | Force SOCKS5 list (* for global, domains separated by commas) |
| DEBUG | ❌ | 1 or true | Developer mode; by default debug logging is disabled (console.log). Set to 1 or true to enable debug logging |
| OFF_LOG | ❌ | 1 or true | By default logging is enabled; set to 1 or true to disable logging |
| BEST_SUB | ❌ | 1 or true | By default the preferred subscription generator feature is disabled; set to 1 or true to enable it |
| PRELOAD_RACE_DIAL | ❌ | 1 or true | By default the preload race dial feature is disabled; set to 1 or true to enable it |
🔧 Advanced Tips
To modify the TOKEN in the subscription URL and the UUID used for node verification, you can change the variables:
- Changing the
ADMINorKEYvariable’s value will randomly modify the TOKEN in the subscription URL and the UUID used for node verification. - Setting the
UUIDvariable will force-fix the TOKEN in the subscription URL and the UUID used for node verification. Note that it must be in UUIDv4 standard format, otherwise nodes won’t work.
This tool supports dynamically switching the underlying proxy scheme via PATH:
- Specify
PROXYIPexamples:url /proxyip=proxyip.cmliussss.net /?proxyip=proxyip.cmliussss.net - Specify
SOCKS5examples:url /socks5=user:[email protected]:1080 /?socks5=user:[email protected]:1080 /socks://[email protected]:1080 (activates global SOCKS5 by default) /socks5://user:[email protected]:1080 (activates global SOCKS5 by default) - Specify
HTTP Proxyexamples:url /http=user:[email protected]:1080 /http://user:[email protected]:8080 (activates global SOCKS5 by default)
💻 Client Compatibility
| Platform | Recommended Clients |
|---|---|
| Windows | v2rayN (https://github.com/2dust/v2rayN/releases), Hiddify (https://github.com/hiddify/hiddify-app/releases), FlClash (https://github.com/chen08209/FlClash/releases), mihomo-party (https://github.com/mihomo-party-org/clash-party/releases), Clash Verge Rev (https://github.com/clash-verge-rev/clash-verge-rev/releases), Clashmi (https://github.com/KaringX/clashmi/releases), FlyClash (https://github.com/GtxFury/FlyClash/releases), Karing (https://github.com/KaringX/karing/releases), Bettbox (https://github.com/appshubcc/Bettbox/releases) |
| Android | v2rayNG (https://github.com/2dust/v2rayNG/releases), ClashMetaForAndroid (https://github.com/MetaCubeX/ClashMetaForAndroid/releases/), FlClash (https://github.com/chen08209/FlClash/releases), Clashmi (https://github.com/KaringX/clashmi/releases), Hiddify (https://github.com/hiddify/hiddify-app/releases), NekoBox (https://github.com/MatsuriDayo/NekoBoxForAndroid/releases), FlyClash (https://github.com/GtxFury/FlyClash/releases), Karing (https://github.com/KaringX/karing/releases), Bettbox (https://github.com/appshubcc/Bettbox/releases) |
| iOS | Surge, Shadowrocket, Stash, Hiddify (https://github.com/hiddify/hiddify-app/releases), Loon, Egern, Clashmi (https://clashmi.app/download), Karing (https://karing.app/), Quantumult X |
| macOS | FlClash (https://github.com/chen08209/FlClash/releases), mihomo-party (https://github.com/mihomo-party-org/clash-party/releases), Clash Verge Rev (https://github.com/clash-verge-rev/clash-verge-rev/releases), Surge, Clashmi (https://clashmi.app/download), Karing (https://karing.app/), FlyClash (https://github.com/GtxFury/FlyClash/releases) |
| HarmonyOS | ClashBox (https://github.com/xiaobaigroup/ClashBox/releases) |
⭐ Project Popularity
Stargazers over time (https://starchart.cc/cmliu/edgetunnel)
🙏 Special Thanks
💖 Sponsorship Support
- Cloud server for subscription conversion service (https://sub.cmliussss.net/)
- Alice (https://url.cmliussss.com/alice)
- EasyLinks (https://www.vmrack.net?ref_code=5Zk7eNhbgL7)
- ZMTO(VTEXS) (https://zmto.com/?affid=1532)
🛠 Open Source Code References
- zizifn/edgetunnel (https://github.com/zizifn/edgetunnel)
- 3Kmfi6HP/EDtunnel (https://github.com/6Kmfi6HP/EDtunnel)
- SHIJS1999/cloudflare-worker-vless-ip (https://github.com/SHIJS1999/cloudflare-worker-vless-ip)
- Stanley-baby (https://github.com/Stanley-baby)
- ACL4SSR (https://github.com/ACL4SSR/ACL4SSR/tree/master/Clash/config)
- Guy Shen (https://t.me/CF_NAT/38889)
- Workers/Pages Metrics (https://t.me/zhetengsha/3382)
- Bai Piao Ge (https://t.me/bestcfipas)
- Mingyu (https://github.com/ymyuuu/workers-vless)
- ToiCF/CF-Workers-HTTPS (https://github.com/ToiCF/CF-Workers-HTTPS)
- ToiCF/CF-Workers-TURN (https://github.com/ToiCF/CF-Workers-TURN)
- ToiCF/CF-Workers-SoftEther (https://github.com/ToiCF/CF-Workers-SoftEther)
- eooce (https://github.com/eooce/Cloudflare-proxy)
- Sukka (https://ip.skk.moe/)
- zhangtaile (https://github.com/cmliu/edgetunnel/pull/999)
- 1345695 (https://github.com/1345695/edcloudwasm)
- ToiCF/GrainTCP (https://github.com/ToiCF/GrainTCP)
⚠️ Disclaimer
- This project (“edgetunnel”) is provided for educational, scientific research, and personal security testing purposes only.
- Users must strictly comply with local laws and regulations when downloading or using this project’s code.
- The author cmliu assumes no responsibility for any behavior or consequences resulting from misuse of this project’s code.
- This project is not liable for any direct or indirect damages caused by the use of this code.
- It is recommended to delete any deployments related to this project within 24 hours after testing is complete.
If you find this project helpful, please give it a Star 🌟 — it’s the greatest encouragement to me!
Similar Articles
@huoshan007: Still paying for airport proxies? You can really stop now. This trick is a bit crazy: Prepare two things: 1. Cloudflare account, free registration 2. A domain, a few dollars a year. Then configure it with this open-source tool, basically done in ten minutes. Unlimited nodes, Cloudflare CDN channels, YouT…
edgetunnel is an open-source tool based on Cloudflare Workers/Pages, using edge computing tunnel technology to build proxy nodes, supporting VLESS, Trojan, Shadowsocks and other protocols, which can freely replace paid VPN services.
@afly813: https://x.com/afly813/status/2061989786215444949
Detailed tutorial on how to use Cloudflare's free services (Workers, Pages, KV, etc.) and free domain names to build a long-term network proxy node at zero cost for accessing services like ChatGPT and Gemini.
@ezshine: My wife returned to China and asked me to set up a VPN for her. I was going to buy a cheap one for a few bucks, but then I found an open-source project that uses Cloudflare's thousands of global edge nodes for circumvention, allowing you to switch IPs freely, free of charge, with blazing speed. Deployment is super simple—just 2 steps. Can you handle that?
An open-source project leverages Cloudflare's global edge nodes to provide free circumvention service, with simple deployment, fast speed, and freely changeable IPs.
@dulipeng: https://x.com/dulipeng/status/2067450611529093311
This article is a practical tutorial that details how to use the Cloudflare Workers/Pages free tier to deploy a low-cost VPN, based on the open-source project edgetunnel, and used with clients like Clash and Shadowrocket.
@axichuhai: Guys! Found a permanently free domain project that has earned 162K Stars on GitHub, absolutely legendary. It's an open-source public welfare project: free registration, free renewal, no hidden fees, no watermark ads. Available for individuals, organizations, and commercial projects. Supports Cloudflare, FreeDNS, and more...
Recommending a permanently free domain open-source project with 162K Stars on GitHub. Completely free registration and renewal, no hidden fees, supports Cloudflare and other DNS providers. Suitable for individuals, organizations, and commercial projects.