本文最后更新于 2023-09-20,该文章更新时间较久,如有变动或失误地方请留言或自行查找。

在使用 NAS 的时候,很多人一般有两个需求:

  1. 通过外网访问NAS,并且配置 SSL
  2. 通过外网访问NAS上的一些服务,例如 NASTool、Plex 等。

首先关于外网访问 NAS,并配置 SSL,我们通过简单的反向代理就能实现,但是第二个问题,很多人一般会通过路由器转发多个端口实现,这样一是麻烦,第二个是不安全,所以这里我们可以可以通过 反代理 + 通配符域名/证书 来实现仅转发一个端口,就能访问NAS上的所有服务。

为了方便,这里以黑群晖为例(白群晖同样适用),其他如绿联或者一些第三方的 NAS 系统没有反代理系统的,推荐使用 NginxProxyManager


1、前置条件

开始之前,你需要具备以下条件:

  1. 装有黑群晖系统的NAS一台
  2. 公网IP
  3. 域名一个
  4. 通配符SSL证书

2、申请域名、及通配符证书申请

(1).域名解析

首先,你需要拥有一个域名,DNS 厂商可以是腾讯、阿里等,这里假设我一个 waistu.com 的腾讯域名,打开腾讯云DNS解析控制台,添加域名解析,主机记录为 * 、记录类型为A 、 记录值为 公网IP



(2).DDNS 配置

由于家用公网IP会变动,所以这里我们需要用到 DDNS ,这里推荐使用 DDNS-GO,你可以通过在群晖套件添加矿神源(打开页面右下角有添加教程)下载套件,或者使用docker部署,这里不做过多赘述。

安装好 DDNS—GO 后,根据提示添加你域名所在 DNS 厂商的ID和密钥之后,在域名添加这里添加域名解析,例如 *.waistu.com .


这里根据你自己的实际情况来写,因为我的是 IPv4 的公网IP,所以在这里添加域名解析值,完成后可以点击右上角的 日志来查看解析状态=。


(3).SSL 申请

接下来,我们需要申请一个通配符的证书,一般是添加 Let's Encrypt 证书,但是为了方便,这里推荐使用 nginxWebUI ,因为可以自动续签 并配置 NGinx 配置。

这里填写域名信息,并且进行证书申请,一般会申请成功,如果申请失败请多尝试几次或者过段时间再申请,也可可以尝试其他办法。

申请成功之后,打开自动续签,并下载证书即可。


3、群晖导入证书

依次打开 控制面板 > 安全性 > 证书 > 新增,导入我们刚才申请好的证书,并将我们申请好的证书设置为默认证书即可。



4、反向代理并配置SSL

依次打开 控制面板 > 登陆门户 > 高级 > 反向代理服务 > 新增,这里的反向代理名称随便填,你能分清是哪个服务即可。

协议这里我们选用 HTTPS 即可,主机名这里也是自定义分配,因为前面我们申请了 *.waistu.com 通配符证书,所以这里可以随便填,例如 ds.waistu.com是访问群晖NAS的, nastool.waistu.com 访问 NAStool 、 plex.waistu.com 访问 Plex 等,举一反三即可。

来源的端口这里只填一个就可以,例如这里的 10086 就是我们使用的唯一端口,后面添加的需要外网访问的服务,都统一使用这个服务。需要在软路由或者光猫的端口转发那里,将外部的 10086 端口访问转发至内部的 5000 端口。

下面的目的地这里,就是需要代理的本地服务,协议为默认的 HTTP 即可,主机名为 127.0.0.1 即可。

端口这里根据服务来填写,比如访问 NAS 的,就写 5000 端口,访问 NASTool 就写 3000 端口,根据你容器或者套件的实际端口填写。



完成这些操作之后,我们就可以使用对于的 域名 + 端口 进行外网访问相应的服务了,比如:

服务域名
群晖NAShttps://ds.waistu.com:10086
NASToolhttps://nastool.waistu.com:10086

常见问题&注意事项:

(1)以上操作过后依旧无法访问或者SSL无效

如果你都配置完了,还是不行的话,可以检查下 控制面板 > 安全性 > 证书 > 设置 这里,你具体的服务和证书是否一致,不一致的话就要修改一下。


16951979063999.jpg


(2)其他端口转发

你只是使用开头的两个场景,即 配置SSL外网访问其他业务,这里基本就完成了,如果你是还需要使用群晖的 Synology Drive 备份文件,这里是需要单独在转发另一个端口号的。


以上就是使用黑群晖NAS的反代理系统进行配置 SSL单端口访问其他业务 的一些玩法,如果你还遇到什么问题,可以下方留言沟通。