Cloudflare Tunnel 内网穿透:零成本实现公网访问内网服务
记得半年前我还在为访问家里的NAS发愁,每次出门想取个文件都得麻烦家人开机。尝试过frp方案,但租用带公网IP的服务器每月又是一笔开销。直到发现了Cloudflare Tunnel这个神器,彻底解决了我的痛点!今天就把我的实践过程分享给大家,无需公网服务器,只用免费计划就能实现安全的内网穿透。
为什么选择Cloudflare Tunnel?
与传统frp相比,Cloudflare Tunnel有三大优势让我最终选择了它:
完全免费 - 使用Zero Trust的免费计划足够个人使用
无需公网IP - 直接通过Cloudflare的全球网络进行穿透
自动HTTPS - 无需额外配置即可使用443端口
准备条件
在开始部署前,请确保准备好以下两项(都是容易获取的):
域名 - 推荐注册6-9位纯数字的xyz域名,一年只需0.67美元
支付方式 - 双币信用卡或绑定借记卡的PayPal(仅验证用,实际不会扣费)
详细部署步骤
1. 开通Zero Trust服务
选择"Free"免费计划创建账户
在付款方式中选择PayPal并绑定借记卡(更安全)

2. 创建Tunnel通道
在侧边栏选择"Tunnels"
点击"Create a tunnel"
输入任意名称(如my-home-server)
3. 安装连接器
推荐Docker方式(适合大多数设备):
docker run --name cloudflared -d \ --restart=unless-stopped \ cloudflare/cloudflared:latest \ tunnel --no-autoupdate run --token=你的令牌
ARM设备手动安装(如树莓派):
# 下载最新ARM版本 curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-armhf.deb # 安装并设置为服务 sudo dpkg -i cloudflared.deb sudo cloudflared service install <你的令牌>

4. 配置域名映射
回到Tunnel配置页面
点击"Configure"进入Public Hostname设置
按以下规则配置:
Domain:选择已托管在Cloudflare的域名
Subdomain:设置子域名(如nas)
Type:选择HTTP/HTTPS
URL:填写内网服务地址(如192.168.1.100:8080)

使用技巧与注意事项
经过三个月的实际使用,总结几个实用技巧:
多服务配置 - 一个Tunnel可配置多个子域名指向不同内网服务
安全加固 - 在Zero Trust策略中设置访问限制(如仅允许特定国家IP)
状态监控 - 使用
docker logs cloudflared查看实时连接状态
重要提示: 虽然免费计划完全够用,但请定期检查用量,避免意外产生费用。我设置了每月账单提醒,至今未产生任何费用。
现在我的家庭NAS、智能家居控制台甚至开发测试环境都通过这个方案实现了安全访问。整个过程部署简单,维护成本几乎为零。
点击链接加入群聊四群:722808830
点击链接加入群聊三群:751529538(已满)
点击链接加入群聊二群:376877156(已满)
点击链接加入群聊一群:622891808(已满)
饿了么红包
本站附件分享,如果附件失效,可以去找找看