那台跑 frp 的腾讯云,我退了
很多人都有内网穿透的需求。以前我都是买 VPS,使用 frp 去做内网穿透,但是发现既需要一台服务器,还需要不少配置,感觉很麻烦。
后来我看到 Cloudflare 就有自带的服务,而且是完全免费的,只需要几行命令就可以完成。
那台跑 frp 的腾讯云轻量是新人优惠(99 一年),跑了大半年,换成 CF Tunnel 之后到期就没续。这篇就是把家里的内网服务暴露成 https://xxx.你的域名 的完整动作记录——不开端口、不要公网 IP、不用买跳板机。
跑起来之前需要什么
跑通 Tunnel 三件事够了。
-
一个挂在 Cloudflare 的域名。不必从 CF 买,只要 NS 改到 CF 就行(任何注册商的域名都可以)。如果还没托管,先看。
-
一台跑服务的内网机器。NAS、家用小主机、软路由都行,能装东西就行。
-
cloudflared 客户端。按机器选一种装:
Linux 直装:下 .deb 或 .rpm 跑 dpkg -i / rpm -i
Docker:拉 cloudflare/cloudflared:latest 镜像
群晖 / 飞牛:套件中心或 Docker 包都跑得起来
装完后跑下面这条确认装好了:
能吐版本号就 OK,跑不出就回查路径或 service 状态。
注意:cloudflared 后面要塞 token 进去(Step 2 用),建议提前确认机器上能用 root 或 sudo——service 模式装服务要权限。
5 步把内网服务接到公网
Step 1:建 Tunnel + 拿 token
去 CF 后台 → Zero Trust → Networks → Tunnels → Create a tunnel → 选 Cloudflared → 给 Tunnel 起个名(比如 home-nas)→ 下一步会拿到一段 install + run 的 token 命令。
Step 2:在内网机器跑 cloudflared
把下面命令里的 <你的 TOKEN> 换成 Step 1 拿到的那段长字符串。
裸命令(Linux service 模式,开机自启):
或者 Docker compose 一份。把下面这段保存成 docker-compose.yml:
在同目录下起容器 + 看日志:
跑通判定两件事:日志里看到 Registered tunnel connection 一类输出 + CF 后台那个 Tunnel 状态从 INACTIVE 变成 HEALTHY。
Step 3:绑 Public Hostname
后台 → 当前 Tunnel → Public Hostnames → Add a public hostname。三个字段:
-
Subdomain:比如 app
-
Domain:选你已托管在 CF 的那个域名
-
Service:Type 选 HTTP(如果内网服务自己跑了 https 才选 HTTPS),URL 填 http://192.168.1.100:3030(换成你内网机器的真实 IP + 服务端口,前面 http:// 别漏,UI 不会自动补)
Step 4:验证两件事
-
CF 后台 Tunnel 状态 = HEALTHY
-
浏览器访问 https://nas.你的域名 能开
Step 5:跑不通先按这三个顺序查
风险提示:DNS 没生效。dig nas.你的域名 CNAME 看是不是指向
,没指向就等几分钟,或回 Public Hostname 检查域名选错没。
风险提示:内网地址写错。先在内网机器上 curl http://192.168.1.x:5000 自检,本机访问不通的话外面一定不通。
风险提示:Service Type 选错。内网服务跑 http 你选了 HTTPS(或反过来),是这一步最常见误判。
NAS、密码、相册都挂上了,路由器一个端口都不开
我主要使用它把我家里的网络服务做穿透,其中一些密码服务和相册功能非常关键,这让我能随时随地在外面安全地控制家里的服务。
其实路由器也可以配置,但需要更改防火墙,操作比较复杂;而且如果设置不当,还会出现安全风险的问题。
我现在挂着的几个域名 → 服务对应:
-
→ 群晖 DSM 面板(5000 端口)
-
→ Vaultwarden 密码服务(内网走 http)
-
→ 自建相册(8080 端口)
这套真正留下我的不只是省了那台跑 frp 的腾讯云。家里那台路由器从头到尾没开过任何端口,外网那一侧只有 cloudflared 在做出站连接,外面的扫描器看不到我家入口。frp 跳板那套架构给不了——前者外网总归要露一个 IP + 端口,露出去的瞬间就开始被扫。
注意:入站端口归零不等于服务本身就安全。DSM / Vaultwarden 该上的强密码、二步验证、Cloudflare Access 还是要上,别以为接到 Tunnel 后面就高枕无忧。
这套不适合谁,国内访问要绷一根弦
得把丑话先说完。下面这三种场景就别硬上 Tunnel:
-
给团队 / 多人共用:个人或 50 人以内的小团队 Cloudflare Access 免费档够用;超过这个量或要 SSO / 审计日志这类高级能力才得跑付费档
-
跑高带宽流媒体(Plex / Jellyfin / Emby 这种):CF 那边 ToS 不让走非 html 大流量,量大了会被掐
-
走非 http/https 协议(SSH 直连 / 游戏服 / Minecraft):能用 cloudflared access 兜,但折腾不少,不如直接拉 Tailscale
严重警告:免费档在国内某些时段会卡或者偶尔断流。我自己实测晚高峰打开家里 NAS 还是会有点卡顿,这块没办法绕——是国内网络环境的问题,不是 Tunnel 的问题。我平时主要在外面(手机 4G/5G 或公司网)用,体验稳;纯国内宽带访问家里服务的话对体验敏感就结合 Tailscale 或直连兜底。这一点不交代清楚,回头你被坑了再来骂赛博活佛就尴尬了。
内网穿透没有我们想象的那么复杂,只需要一些简单的配置和对应的服务,就可以很好地实现我们想要的功能。主要还是因为“赛博活佛”提供的这些功能,后续我还会去深挖到底还有什么免费的服务给我们提供。
-
🌐 VPS监控:
-
🌐 海外支付分享
-
📢 传家宝VPS:
-
💬 TG交流群:







暂无评论内容