Cloudflare Tunnel:我的NAS内网免公网IP穿透终极方案

  • 你是否和我一样,为家中NAS无法分享给朋友访问而苦恼?没有公网IP, frps方案卡在第一步,研究了DDNsto、飞牛FN Connect或节点小宝,却发现因为域名需要备案,他们的服务都需要验证才能打开NAS?

    如果你对上述任何一个问题点头,那么这篇探索笔记或许能为你指明方向。在折腾了几乎所有主流方案后,我发现了一个近乎完美的答案:*Cloudflare Tunnel,这个在国内网上被戏称“赛博活佛”的存在。

    Hackers Actively Exploiting Cloudflare Tunnels for Stealthy Attacks 对比优势:为何它是个人用户的“赛博活佛”?

    结合上表的痛点,Cloudflare Tunnel 的优势一目了然:

    彻底免公网IP:仅需设备能访问外网即可,解决了绝大多数家庭宽带用户的根本难题。

    极致安全:服务器隐身,所有流量经 Cloudflare 网络加密中转,并天然集成DDoS防护和Web应用防火墙(WAF)。

    真正的免费与高性能:免费套餐功能已非常完整,且能利用 Cloudflare 全球CDN网络进行智能路由加速,访问体验优异。

    易于分享与管理:可轻松绑定自定义域名,通过 Cloudflare Zero Trust 策略灵活控制访问权限(例如,要求输入特定邮箱的一次性密码才能访问),实现安全可控的分享。

    配置日益简化:早期需命令行配置,但现在可通过 Zero Trust 仪表板图形化操作,“仅需三步” 即可完成隧道创建、客户端安装和路由配置,对新手极度友好。

    实战指南:为你的飞牛NAS部署Cloudflare Tunnel

    下面,我们以在飞牛NAS上部署为例,拆解核心步骤。

    前期准备

    \1. 拥有一个域名(如我的 172508.xyz)。

    \2. 将域名的DNS解析服务器修改为 Cloudflare 提供的DNS地址,即域名由 Cloudflare 托管。

    \3. 在 Cloudflare 面板中,进入 Zero Trust 模块(有免费计划可用)。

    \4. 如果没有外网支付方式,可在添加付款方式那步点取消,再返回,Tunnel已经创建好了。

    核心三步曲

    第一步:创建隧道

    在 Zero Trust 面板的 “Access” -> “Tunnels” 中,点击 “Create a Tunnel”。

    为隧道命名,任意名字、支持中文,然后点击保存。

    图片

    图片

    第二步:安装并运行连接器

    在这一步系统会生成一个针对你设备操作系统的安装命令。我们选docker,然后点击命令行最右边的图标直接复制它生成的带token的命令。

    图片

    打开你的飞牛NAS,打开Fntermx终端,登录后输入 sudo -i,你的用户密码,密码输入时是不可见的,完成后你应该会看到root@你的用户名粘贴并执行这条命令。它会自动下载 cloudflared 并安装为docker,与 Cloudflare 建立连接。

    图片

1
docker run cloudflare/cloudflared:latest tunnel --no-autoupdate run --token 

另外它原先的命令是直接让隧道在终端里运行,如果我们把终端命令行关了就会把隧道也关了。为了方便,我们在复制完安装命令之后,在命令行最开头的docker run 后面加上

1
-d--name

-d 后台运行了

–name 给它命名,不然会随机生成一个名字。

1
docker run -d --name my-cloudflared-tunnel cloudflare/cloudflared:latest tunnel --no-autoupdate run --token 

图片

看到下面红色这段方框里的乱码的时候就是安装好了。

图片

回到Tunnel页面,能看到一个正常的提示。

第三步:配置公共主机名

打开Tunnel配置页面,为隧道添加一个 “Public Hostname”。

图片

这里以我之前制作的下载微信公众号音频的小工具为例:

* 子域名**:wxaudio

* 域名**:选择你托管的 172508.xyz

* 服务类型/URL:填写你NAS服务的内部地址,如我的 http://192.168.50.100:5020

图片

保存后,稍等片刻,你就可以通过 wxaudio.172508.xyz 这个域名打开它了。

图片

尾声:写作,是为了照亮彼此

隧道搭好了,但你敢直接甩链接给吗?

有些服务你是想公开给所有人,但是有些服务你只想在小范围内分享,但是没有管控,你也无法控制访问人员。

现在,你可以放心分享了。

上一篇, Cloudflare Tunnel:我的NAS内网免公网IP穿透终极方案 ,我手把手教你用Cloudflare Tunnel,在没有公网IP的情况下,把家里的NAS服务优雅地发布到公网。

今天这篇续集,就解决这个“最后一公里”

给你的隧道装上「智能门禁」,实现安全、可控、可审计的分享。

今天要介绍的是Cloudflare的Zero Trust(零信任)平台,能免费帮你解决这一切。

Cloudflare One Agent - 适用于Android的APK下载| Aptoide

优点:

✅个人用户免费使用核心功能

✅核心理念:“从不信任,永远验证”

✅三步设置,就能让分享既安心又体面

*心动了吗?那我们一起给你的**NAS**装上「智能门禁」*

假设你已通过Cloudflare Tunnel将NAS暴露在nas.yourdomain.com

*第一步:进入Zero Trust控制台*

1.登录 Cloudflare仪表盘

2.左侧菜单→Zero Trust

3.进入Access→Applications→Add an application→选择Self-hosted

图片

图片

*第二步:绑定你的隧道服务*

-应用名称:比如公众号展示专用

-域名:填写你的隧道地址(如wxaudio.1725083xyz

-会话时长:看你的需求,我随便选了一个30分钟

点击Next,进入最关键的——访问策略配置。

图片

*第三步:按场景设置访问策略(核心!)*

*场景一:仅限本人(最严格)*

>适合:管理后台、财务、敏感文档

-允许条件:Need→Emails→输入你的个人邮箱

-二次验证:勾选One-time PIN(每次登录都发验证码)

图片

✅效果:即使密码泄露,没你邮箱也进不去

*场景二:安全分享给家人**/**小团队*

>适合:家庭相册、电影库、共享文件夹

-规则1:Include→Emails→添加家人邮箱(如test@qq.com

-规则2(+Add another rule):Include→Country→选China

-验证方式:可选One-time PIN,或对指定邮箱后缀免验证

图片

✅效果:必须是家人+必须在国内→海外深夜登录?直接拦截!

图片

**策略设定好,保存,返回到应用程序页面,如果没有自动更新刷新一下,应该可以看到策略下出现了刚刚创建的新策略。****

*下一页,直接默认设置,保存后会看到如下的提示。*

图片

我们试着打开网页

1
wxaudio.172508.xyz

图片

*已经保护好了。*