 
            飞牛 NAS + Cloudflare 内网穿透配置指南
飞牛NAS + Cloudflare 内网穿透配置指南
一、背景与目标
飞牛NAS(fnOS)作为私有云存储解决方案,通常部署在局域网内。若需通过公网访问NAS服务(如Alist、小雅等),需解决内网穿透问题。Cloudflare Tunnel(原Cloudflare Argo Tunnel)提供了一种无需公网IP的穿透方案,通过Cloudflare的全球边缘节点实现安全的外网访问。
二、准备工作
- 硬件环境:飞牛NAS设备(已安装fnOS)
- 软件环境: - Cloudflare账户(注册地址)
- 域名(可免费或付费获取,推荐使用Cloudflare托管域名)
- 飞牛NAS已启用Docker功能
 
- 网络要求:飞牛NAS需能访问Cloudflare的API(端口443)
三、操作步骤
1. 在Cloudflare创建隧道
- 登录Cloudflare控制台,进入 Zero Trust → Network → Tunnels
- 点击 Create Tunnel,选择Cloudflared类型
- 输入隧道名称(例如 fnos-tunnel),点击Create Tunnel
- 生成并记录 Token(用于后续配置)
2. 在飞牛NAS部署Cloudflared
创建以下 docker-compose.yml 文件:
version: '3.8' services: cloudflared: image: cloudflare/cloudflared:latest container_name: cloudflared restart: always network_mode: host command: tunnel --no-autoupdate run --token YOUR_CLOUDFLARE_TOKEN关键参数说明:
- network_mode: host:确保容器使用宿主机的网络栈,避免端口冲突
- YOUR_CLOUDFLARE_TOKEN:替换为上一步生成的Token
3. 启动容器
在终端执行以下命令:
docker-compose up -d如果提示 docker-compose 未安装,请先通过飞牛NAS的Docker管理界面启用Docker功能
4. 配置域名绑定服务
- 返回Cloudflare控制台,进入 Zero Trust → Network → Tunnels
- 选择已创建的隧道,点击 Add a public hostname
- 配置如下: - Hostname:输入子域名(例如 alist.yourdomain.com)
- Protocol:选择 HTTP/HTTPS(根据实际服务协议选择)
- Destination:填写本地服务地址(例如 localhost:5244对应Alist服务)
 
- Hostname:输入子域名(例如 
- 点击 Save,等待状态变为Active
四、验证访问
在浏览器中输入配置的子域名(例如 https://alist.yourdomain.com)。若显示飞牛NAS服务界面,说明配置成功。
五、注意事项
1. 安全与权限
- Token保护:Token是敏感信息,泄露可能导致服务被滥用
- 限制访问:可通过Cloudflare的 Workers或WAF规则限制访问IP范围
2. 网络模式要求
必须使用 network_mode: host:若容器使用默认的桥接模式(bridge),本地服务的端口可能无法正确映射
3. 域名解析问题
- DNS同步延迟:Cloudflare的DNS通常几分钟内生效,若无法访问,请等待或刷新DNS缓存
- HTTPS证书:Cloudflare会自动为子域名颁发免费SSL证书(需域名通过验证)
4. 多服务穿透
为每个服务配置独立子域名(例如 alist.yourdomain.com 和 xiaoya.yourdomain.com),避免端口冲突
六、常见问题排查
| 问题现象 | 解决方案 | 
|---|---|
| 容器启动失败 | 检查 network_mode: host是否配置,Token是否正确 | 
| 子域名无法解析 | 确保域名已在Cloudflare中绑定,并等待DNS生效 | 
| 服务无法访问 | 检查本地服务是否运行(如Alist服务是否启动) | 
| HTTPS证书未生效 | 确保子域名通过Cloudflare的CNAME记录解析,并等待证书自动颁发 | 
七、进阶配置建议
- 自动更新Cloudflared:移除 --no-autoupdate参数以启用自动版本更新
- 日志监控:通过以下命令查看容器日志: docker logs cloudflared
- 高可用性:在多台设备部署Cloudflared,通过Cloudflare负载均衡实现故障转移
八、总结
通过Cloudflare Tunnel,飞牛NAS可无需公网IP即可安全地暴露局域网服务到公网。此方案结合了Cloudflare的全球节点与加密传输特性,既保证了访问速度,又避免了传统内网穿透工具(如Ngrok)的局限性。
            本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Vortex·漩点
        
     评论
            
                匿名评论
                隐私政策
            
            
                你无需删除空行,直接评论以获取最佳展示效果
            
        