家里 NAS 的服务想从外面访问,传统端口转发暴露了太多攻击面。Cloudflare Tunnel 是更优雅的方案——它建立出站连接,无需开放任何入站端口。
原理
传统 NAT 穿透需要路由器开放端口,等于把家门敞开。Cloudflare Tunnel 则是你的内网主动连到 Cloudflare 边缘,再反向代理到服务。攻击者只能连到 Cloudflare 边缘,看不到你的公网 IP。
部署步骤
- 安装 cloudflared:
docker run -d --name cloudflared cloudflare/cloudflared - 用 token 认证:
docker exec -it cloudflared cloudflared tunnel --no-autoupdate run --token <TOKEN> - 在 Cloudflare Zero Trust 控制台创建 tunnel,配置路由到内网服务的 IP 和端口。
零信任网关
Cloudflare 的 Zero Trust 还可以加一层访问控制:只有经过 MFA 验证的设备才能访问特定服务。内网服务从此真正”零暴露”。
开源 + Cloudflare 免费层,这套内网穿透方案成本为零,是我 Homelab 的核心基建。