2025最新版:基于Cloudflare Tunnel的内网穿透实战指南

这两年折腾内网穿透,基本把市面方案试了个遍:

  1. FRP反向代理‌:靠学生优惠白嫖的腾讯云服务器(4核4G+6M带宽)确实香,但三年到期后续费直接翻倍。新买的2核2G云服务器做中继,转发网页服务勉强够用,但每年上千的续费账单实在肉疼‌。
  2. 虚拟局域网‌:Zerotier打洞成功率确实高,但每次知道服务器位于北美就心慌,生怕哪天断联;换成国人开发的Easytier后虽然数据走P2P更安全,但穿透率又掉回解放前——现在直接两条腿走路,两套方案互为备份‌24。
  3. Cloudflare Tunnel‌:最近发现的宝藏方案,用托管在CF的域名就能把内网服务甩到公网。虽然节点在国外偶尔抽风,但胜在‌零成本+免备案+银行级加密‌,配个域名10分钟搞定,比FRP改配置重启服务省心十倍‌。‌

这次重点讲Cloudflare Tunnel,就是看中它能把NAS低频访问的内网服务,用最低成本稳定暴露到外网。关键数据全程SSL加密,比自建FRP省了服务器钱还不用操心DDoS防护‌。

一、前置准备

  1. 域名与账号配置

    • 注册Cloudflare账号并完成邮箱验证(建议使用Gmail等国际邮箱)‌。

    • 将已有域名托管至Cloudflare:进入域名注册商后台(如阿里云、华为云),将DNS服务器替换为Cloudflare提供的地址(例如mike.ns.cloudflare.com)‌。

    • 绑定付款方式‌:支持国际信用卡、借记卡或PayPal,仅用于身份验证(支付金额为0元,服务免费)‌

      创建Cloudflare Zero Trust团队

    确认是0元免费就可以继续支付了

    免费计划

    不添加付款方式不让下一步,你可以点Next后输入付款方式

    零元购
  2. 内网环境要求

    • 确保被穿透设备(如NAS、Web服务器)支持Docker或本地客户端运行(推荐Linux系统或群晖DSM
    • 开放设备互联网访问权限,检查防火墙是否放行Cloudflare客户端通信端口(如HTTP/80、HTTPS/443)‌

二、创建Cloudflare Tunnel隧道

  1. 进入Zero Trust控制台

    • 登录Cloudflare控制台 → 左侧菜单点击 ‌Zero Trust‌ → 进入 ‌Networks > Tunnels‌ ‌
    • 首次使用需选择免费计划(Free Plan)‌
  2. 新建隧道

    • 点击 ‌Create a tunnel‌ → 输入隧道名称(如home-nas)→ 保存‌

    • 客户端安装‌:根据设备系统选择安装方式(推荐Docker),群晖可以通过矿神源第三方应用进行安装,本质上也是docker。

      # 拉取官方镜像
      docker pull cloudflare/cloudflared:latest
      # 运行隧道(替换YOUR_TOKEN为实际令牌)
      docker run -d cloudflare/cloudflared tunnel --no-autoupdate run --token YOUR_TOKEN

创建cloudflare tunnel

​ 隧道类型选Cloudflared就可以,然后下一步

选择隧道类型

​ 创建隧道

创建隧道

​ 因为我们要在群晖的Docker下用所以选择Docker,你可以根据自己情况选择。在群晖第三方套件 中安装Cloudflare Tunnel,输入tocken安装进行连接,在下方就可以看到连接器了。

选择连接方式

三、配置公网访问规则

  1. 域名映射与协议设置
    • 在隧道详情页点击 ‌Configure Public Hostname‌ → 选择已托管的域名和子域名(如blog.leitool.top
    • 设置协议(HTTP/HTTPS)及内网服务地址,比如我的内网服务部署在本地群晖的8080端口上,内网服务地址就填http://localhost:8080
    • 支持路径映射(如将/jellyfin指向本地端口8096)‌
    • 一个 Tunnel 中可以添加多条三级域名来跳转到不同的内网服务,在 Tunnel 页面的 Public Hostname 中新增即可。
  2. 端口限制说明
    • 免费版仅支持部分HTTP/HTTPS端口(如80、443、2082等),需避免使用非常用端口‌

​ 这样配置好托管的域名和群晖的IP和端口就OK了

创建丑tunnel成功

四、验证与访问

  1. 测试穿透服务

    • 通过浏览器访问配置的子域名(如https://blog.leitool.top),若显示内网服务页面则成功‌。

      内网穿透服务成功
    • 若失败,检查客户端日志或Cloudflare Tunnel状态‌

五、为你的服务添加额外验证

如果你觉得这种直接暴露内网服务的方式有较高的安全风险,我们还可以使用 Application 功能为服务添加额外的安全验证。

  1. 点击 Application - Get started。

    image-20250301163502956

​ 2.选择自托管

image-20250301163619757

  1. 填写配置,注意 域名和子域名需要使用刚刚创建的 Tunnel 服务相同的域名配置

image-20250301163929962

  1. 选择验证方式。填写 策略名称(任意)。在添加规则区域选择验证方式,示例图片中使用的是特定完整邮箱地址。你还可以选择使用指定的邮箱域名(如@gmail.com)验证、IP 地址范围等方式。

image-20250301164101588

  1. 完成添加
  2. 这样访问配置的子域名(如https://blog.leitool.top)可以看到网站多了一个验证页面,使用刚刚设置的域名邮箱来访问。

六、总结与适用场景

  • 核心优势‌:免费、无需公网IP、集成DDoS防护和HTTPS加密‌。
  • 典型用途‌:
    • 家庭NAS远程访问(如Jellyfin影音服务)‌。
    • 自建GitLab、Nextcloud等Web服务公网暴露‌。
    • 通过SSH/RDP隧道安全访问内网设备(需配置TCP协议映射)‌。

七、参考

  1. 群晖搭建Cloudflare免费隧道穿透,无公网IP也能搞定!__什么值得买
  2. 无需公网IP!CloudFlare Tunnel内网穿透实现内网访问_路由器_什么值得买
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇