黑群晖/群晖 通过反代理实现 SSL 配置以及通过单端口外网访问所有项目
本文最后更新于 2023-09-20,该文章更新时间较久,如有变动或失误地方请留言或自行查找。
在使用 NAS 的时候,很多人一般有两个需求:
- 通过外网访问NAS,并且配置 SSL
- 通过外网访问NAS上的一些服务,例如 NASTool、Plex 等。
首先关于外网访问 NAS,并配置 SSL,我们通过简单的反向代理就能实现,但是第二个问题,很多人一般会通过路由器转发多个端口实现,这样一是麻烦,第二个是不安全,所以这里我们可以可以通过 反代理 + 通配符域名/证书
来实现仅转发一个端口,就能访问NAS上的所有服务。
为了方便,这里以黑群晖为例(白群晖同样适用),其他如绿联或者一些第三方的 NAS 系统没有反代理系统的,推荐使用 NginxProxyManager
。
1、前置条件
开始之前,你需要具备以下条件:
- 装有黑群晖系统的NAS一台
- 公网IP
- 域名一个
- 通配符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
端口,根据你容器或者套件的实际端口填写。
完成这些操作之后,我们就可以使用对于的 域名 + 端口
进行外网访问相应的服务了,比如:
服务 | 域名 |
---|---|
群晖NAS | https://ds.waistu.com:10086 |
NASTool | https://nastool.waistu.com:10086 |
常见问题&注意事项:
(1)以上操作过后依旧无法访问或者SSL无效
如果你都配置完了,还是不行的话,可以检查下 控制面板
> 安全性
> 证书
> 设置
这里,你具体的服务和证书是否一致,不一致的话就要修改一下。
(2)其他端口转发
你只是使用开头的两个场景,即 配置SSL
和 外网访问其他业务
,这里基本就完成了,如果你是还需要使用群晖的 Synology Drive
备份文件,这里是需要单独在转发另一个端口号的。
以上就是使用黑群晖NAS的反代理系统进行配置 SSL
和 单端口访问其他业务
的一些玩法,如果你还遇到什么问题,可以下方留言沟通。
- 感谢你赐予我前进的力量