Failed to add the host to the list of known hosts (/opt/data/.ssh/known_hosts). 飞牛NAS外网访问全攻略:DDNS配置与反向代理实战 - 飞牛怎么玩 - 飞牛NAS教程 - fnOS私有云与Docker部署指南
进阶技巧

飞牛NAS外网访问全攻略:DDNS配置与反向代理实战

为什么要实现外网访问?

飞牛NAS作为家庭数据中心,如果只能在家中使用,其实只发挥了一半的价值。实现安全的外网访问后,你可以:

  • 📁 随时随地存取文件:出差在外也能下载需要的文档
  • 📸 手机照片自动备份:即使不在家,照片也能自动同步到NAS
  • 🎬 远程观影追剧:在外面也能流畅播放NAS上的电影和剧集
  • 🏠 远程管理NAS:随时查看系统状态,处理异常告警
  • 👨‍👩‍👧‍👦 与家人共享数据:给家人开通访问权限,共享家庭相册和文件

但外网访问也意味着NAS暴露在公网上,安全配置是第一要务。本文将带你一步步实现安全可靠的外网访问。

前置条件检查

开始之前,请确认以下条件:

条件 说明
公网IP 向宽带运营商申请(电信/联通通常免费提供,移动可能需要沟通)
光猫桥接模式 光猫需设为桥接,由路由器拨号(必要时联系运营商远程修改)
路由器支持端口转发 绝大多数路由器都支持,部分需手动开启UPnP
域名(可选但推荐) 注册一个便宜域名,配合DDNS使用体验更佳

没有公网IP怎么办? 可以考虑使用Tailscale、ZeroTier等内网穿透方案,本文主要介绍有公网IP的标准方案。

第一步:注册域名(推荐)

推荐在阿里云、腾讯云或Cloudflare注册一个域名,价格通常在几十元/年。有了域名后:

  • 访问NAS不再需要记住IP地址
  • 可以申请免费的Let's Encrypt SSL证书
  • 看起来更专业,也便于分享给家人

注册完成后,进入域名管理后台,我们将在后续步骤中配置DDNS。

第二步:配置DDNS动态域名解析

家庭宽带的公网IP通常会不定期变化,DDNS的作用就是让域名始终指向你当前最新的IP地址。

方案A:飞牛NAS自带DDNS(最简单)

飞牛fnOS系统内置了DDNS客户端,支持阿里云、腾讯云、Cloudflare等主流DNS服务商:

  1. 进入飞牛NAS管理后台 →「系统设置」→「DDNS」
  2. 点击「添加」,选择你的DNS服务商
  3. 填写AccessKey/Secret(以阿里云为例):
  4. 登录阿里云控制台 → RAM访问控制 → 创建子用户
  5. 授权 AliyunDNSFullAccess 权限
  6. 获取AccessKey ID和AccessKey Secret
  7. 填入域名(如 nas.yourdomain.com
  8. 保存并启用

飞牛NAS会每隔几分钟自动检测IP变化并更新DNS记录,无需额外配置。

方案B:Docker部署DDNS-GO(更灵活)

如果希望更多自定义选项,可以使用DDNS-GO:

docker run -d \
  --name ddns-go \
  --restart=always \
  --net=host \
  -v /vol1/1000/docker/ddns-go:/root \
  jeessy/ddns-go

访问 http://飞牛IP:9876 进行Web配置,DDNS-GO支持的DNS服务商更多,更新频率可精细调节。

第三步:路由器端口转发

在路由器管理后台(通常为 192.168.1.1192.168.31.1),找到「端口转发」或「虚拟服务器」设置:

服务 内网端口 外网端口 说明
NAS管理 5666/5667 5666/5667 飞牛NAS Web管理界面(HTTP/HTTPS)
反向代理 8443 8443 NPM代理入口(HTTPS)

⚠️ 安全提醒:不要直接暴露NAS的管理端口(5666)到公网!强烈建议使用反向代理并通过HTTPS访问。

第四步:部署Nginx Proxy Manager反向代理

Nginx Proxy Manager(简称NPM)可以让你统一管理所有服务的SSL证书和访问入口,是外网访问方案的核心组件。

使用飞牛NAS应用中心一键安装

飞牛NAS的应用中心已收录Nginx Proxy Manager,一键安装即可:

  1. 打开飞牛NAS「应用中心」
  2. 搜索「Nginx Proxy Manager」
  3. 点击安装,端口默认81(管理界面)和443(HTTPS代理入口)
  4. 安装完成后访问 http://飞牛IP:81

初始登录

  • 默认账号:admin@example.com
  • 默认密码:changeme
  • 首次登录后务必修改邮箱和密码

申请SSL证书

  1. 登录NPM管理界面,进入「SSL Certificates」
  2. 点击「Add SSL Certificate」→「Let's Encrypt」
  3. 填写:
  4. Domain Namesnas.yourdomain.com*.yourdomain.com(泛域名)
  5. Email Address:用于证书到期提醒
  6. 勾选「Use a DNS Challenge」
  7. 选择你的DNS服务商,填入API Token
  8. 点击「Save」等待证书签发

DNS Challenge方式不需要开放80端口,更适合家庭宽带环境(很多运营商封了80/443端口)。

创建代理规则

  1. 进入「Hosts」→「Proxy Hosts」→「Add Proxy Host」
  2. 配置飞牛NAS管理界面:
  3. Domain Namesnas.yourdomain.com
  4. Schemehttps
  5. Forward Hostname/IP192.168.x.x(飞牛NAS内网IP)
  6. Forward Port5667(飞牛NAS HTTPS端口)
  7. SSL:选择刚申请的证书,勾选Force SSL
  8. 保存后,访问 https://nas.yourdomain.com 即可安全访问飞牛NAS

代理其他Docker服务

使用NPM可以为每个Docker服务配置独立的子域名:

服务 子域名 后端地址
Immich photo.yourdomain.com 192.168.x.x:2283
Jellyfin media.yourdomain.com 192.168.x.x:8096
HomeAssistant home.yourdomain.com 192.168.x.x:8123
qBittorrent bt.yourdomain.com 192.168.x.x:8080

所有服务都可以共用同一个SSL证书(泛域名证书),一键续签,非常方便。

第五步:安全加固

外网访问配置完成后,务必做好以下安全措施:

1. 修改默认端口

在飞牛NAS设置中修改默认管理端口,避免被扫描:

  • 进入「系统设置」→「安全」→ 修改HTTP/HTTPS端口
  • 使用不常见的高位端口(如 15666/15667)

2. 启用双重验证

  • 为飞牛NAS管理账户启用双因素认证(TOTP)
  • 强密码要求:12位以上,包含大小写字母、数字和特殊字符

3. 配置访问IP白名单

在Nginx Proxy Manager中可以为敏感服务设置IP访问限制:

# 在Advanced标签中添加
allow 你的公司IP;
allow 你的常用IP段;
deny all;

4. 关闭不必要的服务

  • 定期检查Docker容器,停用不再使用的服务
  • 关闭UPnP自动端口映射功能

5. 日志监控

定期检查飞牛NAS的登录日志,发现异常登录立即处理:

  • 进入「系统设置」→「日志」→ 筛选登录相关记录
  • 关注异地登录和密码错误频率异常

常见问题排查

Q: DDNS解析不生效?

A: 检查以下步骤:①公网IP是否与DDNS解析一致(对比ip138.com显示的IP);②DNS解析TTL是否过长;③AccessKey权限是否正确

Q: NPM申请证书失败?

A: Let's Encrypt有频率限制,同一域名每周最多5张证书。确保DNS Challenge的API Token有写入DNS记录的权限。

Q: 手机4G/5G能访问但公司WiFi不行?

A: 公司网络可能封锁了非标准端口。可尝试使用443端口(需要路由器支持端口映射),或使用Tailscale等隧道方案。

Q: 访问速度很慢?

A: 上传速度取决于家庭宽带的上行带宽。建议:①降低远程播放码率;②对照片设置缩略图预生成;③考虑使用CDN加速静态资源

进阶玩法推荐

外网访问打通后,可以进一步探索:

  • WireGuard VPN:更安全的内网访问方式,所有流量加密传输
  • Cloudflare Tunnel:无需公网IP和端口转发的零信任方案
  • Traefik替代NPM:更适合大规模微服务场景的反向代理
  • Authelia认证网关:在反向代理前加一层统一认证

总结

通过DDNS + 反向代理的方案,你可以安全便捷地从任何地方访问飞牛NAS。整个配置过程不算复杂,但每个环节都建议认真对待,特别是安全加固部分。毕竟NAS存储着个人和家庭的私密数据,安全永远是第一位。

配置完成后,记得先用手机4G网络测试外网访问是否正常,确认SSL证书生效,就可以享受随时随地访问家庭NAS的便利了!

💬 评论区
发表评论

暂无评论,来说两句吧