飞牛NAS外网访问全攻略:DDNS + 反向代理
你是否也曾遇到过这样的尴尬:人在外面,急需访问家里 NAS 上的文件,却只能干瞪眼?内网穿透工具不是限速就是收费,让人又爱又恨。其实,当你拥有公网 IP(哪怕是动态的),一套由 DDNS 和反向代理组合的解决方案,就能让你像访问本地磁盘一样,安全、高速地访问飞牛NAS。
本文将手把手带你完成从零配置,实现随时随地的无缝访问。整个过程分为两大核心模块:先用 DDNS 解决“IP 会变”的问题,再用反向代理解决“端口太多”和“HTTPS 证书”的问题。
第一步:准备工作与前提条件
在开始前,请确认以下几项,否则后续步骤可能会卡壳:
- 公网 IP:光猫必须处于桥接模式,由你的路由器拨号。你可以在路由器的 WAN 口状态里查看 IP,如果和百度搜索出的 IP 一致,说明你拥有公网 IP。
- 域名:你需要一个自己的域名,国内平台如阿里云、腾讯云均可,价格一年几十元。
- 路由器权限:需要能够设置端口转发或 DMZ 主机。
- 飞牛NAS:确保系统版本已更新到最新,并已开启 SSH 功能(设置 -> SSH)。
第二步:配置 DDNS,让动态 IP 拥有固定“姓名”
光猫重启、路由器断电,IP 就会变。DDNS 的作用就是将你的域名实时解析到当前的公网 IP 上。
方案 A:使用路由器自带的 DDNS 功能(推荐)
这是最省事、最稳定的方式。登录你的路由器后台,找到“动态域名”或“DDNS”设置。
- 选择服务商,例如 Oray、DynDNS 或你域名服务商提供的 DDNS 服务。
- 输入你在服务商处注册的用户名、密码或 Token。
- 填写你的完整域名,点击保存。路由器会自动每 5 分钟检测一次 IP 变化并更新解析记录。
方案 B:在飞牛NAS上使用脚本更新(备用方案)
如果路由器不支持,我们可以在飞牛NAS的 Docker 中部署一个 DDNS 容器。以阿里云为例,使用 ddns-go 这个工具。
- 在飞牛NAS的 Docker 应用中心,搜索
ddns-go并安装。 - 创建容器时,映射端口
9876到本地。 - 浏览器访问
http://你的NAS局域网IP:9876,进入配置界面。 - 选择“阿里云”,填入你的 AccessKey ID 和 Secret(建议使用 RAM 子账号,仅授权 DNS 解析权限)。
- 填入你的主域名和二级域名,如
home.example.com。 - 点击保存,它会自动获取当前公网 IP 并创建解析记录。
第三步:路由器端口转发,打通数据“高速公路”
现在域名已经指向你家宽带了,但数据到达路由器后,需要知道去哪里找飞牛NAS。我们需要将外部端口映射到 NAS 的内网 IP 上。
- 登录路由器,找到“端口转发”或“虚拟服务器”。
- 创建规则,将外部端口
80和443(HTTP 和 HTTPS 默认端口)转发到飞牛NAS的内网 IP 上(例如192.168.1.100)。 - 如果你还需要 SSH 或 FTP,可以自行添加其他端口,但为了安全,建议只开放 80 和 443。
注意:如果你的运营商封锁了 80 和 443 端口(常见于部分家庭宽带),请将外部端口改为其他高位端口,如 8080 和 8443,并记住这些端口。
第四步:配置反向代理,优雅地管理所有服务
飞牛NAS 的 Web 管理界面默认端口是 5666,Jellyfin 是 8096,qBittorrent 是 8080。如果直接暴露这些端口,不仅记不住,还会增加攻击面。使用 Nginx Proxy Manager(NPM)来统一管理。
1. 部署 Nginx Proxy Manager
在飞牛NAS 的 Docker 中,搜索 jc21/nginx-proxy-manager 并安装。创建一个名为 npm 的容器,需要映射以下端口:
80->80(HTTP)443->443(HTTPS)81->81(管理界面)
2. 添加反向代理规则
安装完成后,访问 http://你的NAS局域网IP:81,默认账号密码为 [email protected] / changeme。
点击左侧“Hosts” -> “Proxy Hosts”,然后点击“Add Proxy Host”。
示例一:飞牛NAS 管理界面
- Domain Names:输入
fn.yourdomain.com - Scheme:选择
http - Forward Hostname:输入
192.168.1.100(你的 NAS 内网 IP) - Forward Port:输入
5666 - Websockets Support:勾选(重要,否则 Web 终端无法使用)
示例二:Jellyfin 媒体服务器
- Domain Names:输入
media.yourdomain.com - Scheme:选择
http - Forward Hostname:输入
192.168.1.100 - Forward Port:输入
8096
3. 申请 SSL 证书
在添加完代理规则后,点击该规则右侧的“Edit”,进入“SSL”标签页。
- 选择“Request a new SSL Certificate from Let's Encrypt”。
- 勾选“Force SSL”和“HTTP/2 Support”。
- 点击“Save”。NPM 会自动申请并续期证书。
等待一两分钟,你就可以通过 https://fn.yourdomain.com 访问飞牛NAS了,地址栏会显示绿色的小锁图标。
第五步:安全加固与性能优化
外网访问暴露在公网,安全是重中之重。
- 修改默认密码:登录 NPM 后,立即修改管理员邮箱和密码。
- 仅允许 HTTPS:在 NPM 的 SSL 设置中,务必勾选“Force SSL”,禁用 HTTP 明文访问。
- 开启访问列表:在 NPM 的“Access Lists”中,可以设置仅允许特定国家或 IP 段访问,这对国内用户尤其有效,可以拦截大部分境外扫描流量。
- 飞牛NAS 防火墙:在飞牛NAS 的“设置”->“网络”->“防火墙”中,仅允许来自内网网段的 5666 端口访问,而外网访问仅通过 NPM 代理进入。
进阶技巧:访问内网其他设备
反向代理不仅限于 NAS 本身。你还可以将路由器后台、智能家居等设备通过 NPM 代理出去。只需在 NPM 中新增规则,将 Forward Hostname 指向对应设备的内网 IP 即可。例如,将 router.yourdomain.com 指向 192.168.1.1,端口为 80。
总结
至此,你已经成功搭建了一套完整的飞牛NAS外网访问体系。通过 DDNS 解决了 IP 漂移问题,通过反向代理统一了访问入口并免费实现了 HTTPS 加密。这套方案不仅速度快、稳定性高,而且完全掌握在自己手中,彻底摆脱了第三方内网穿透工具的速度限制和隐私风险。
今后,无论是在咖啡厅、地铁还是异国他乡,只要打开浏览器,输入你的专属域名,飞牛NAS 就在你手边。享受这种掌控一切的自由感吧,这才是折腾 NAS 的最大乐趣。如果在配置中遇到任何问题,欢迎在评论区留言交流。
暂无评论,来说两句吧