NAS 篇一:[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

2024-04-04 01:20:10 15点赞 137收藏 20评论

前言

随着家庭nas对外服务日渐增多,便捷安全的访问家庭服务成为必不可少的一环。

场景一:群辉提供photos服务,家人手机客户端通过https连接访问,而群辉证书需要手动导入定期维护易用性差,如果让家人先接VPN再连photos = 软件不可用。

场景二:自建vaultwarden服务,对外连接时必须要https安全访问,要么利用群辉自有反代,要么自建反向代理服务。

场景三:自建emby服务,采用macvlan的方式单独分配了局域网ip(方便流控),而群辉(单网卡)作为宿主机无法与emby(容器)通信,无法使用群辉自有反代或者群辉docker容器自建反代。

综合上述等多个场景的问题最后选择在爱快中安装docker,同时部署容器nginx manager proxy(简称npm)反向代理,解决外网安全访问家庭NAS服务的问题。反向代理没有采用Lucky还是本着开源的项目进行挑选,同时nginx作为反向代理较为成熟,自定义配置自由度较高。

官网地址:https://nginxproxymanager.com/

github地址:https://github.com/NginxProxyManager/nginx-proxy-manager?tab=readme-ov-file

前提条件

  • 域名一枚(任意运营商即可)

  • NAS一台

  • 爱快(理论来说能跑docker就行,OP也可以)

NPM安装

1、绑定爱快云,同时在爱快云下发docker插件,在爱快 高级应用>插件管理 看到docker图标表示下发成功。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

2、在 系统设置>磁盘分区,重新分配磁盘分区(普通存储),然后挂载 opt 路径(路径可以自定义)

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

3、文件管理中建立2个目录:/opt/docker/npm/letsencrypt/opt/docker/npm/data,用于后续npm容器的数据持久化。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

4、自定义docker镜像源:https://registry.hub.docker.com,存储位置主要用来存放下载的镜像,如果dockerhub官方镜像源无法访问,可以使用国内镜像。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

5、镜像管理>添加,搜索镜像 jc21/nginx-proxy-manager,然后 下载 latest,等待下载完毕;如果无法下载或者进度条没有动静请按照步骤3将镜像源切换到国内源。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

6、接口管理>添加,名字随意,IPV4地址:172.17.0.0/24,IPV4网关:172.17.0.1,主要是用于docker内部IP分配,可自行定义

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

7、容器列表>添加,名称随意,内存500M都够,IPV4和IPV6地址空着即可,容器路径按照截图映射下

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

8、此时容器已经启动,同时应该分配了内网IP:172.17.0.2;端口映射处新增映射,外网端口自定义记住即可,内网端口转发2条,58443到443(https端口),58081到81(npm管理面端口)

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

9、设置完成后,通过域名+端口应该可以访问npm的管理面(域名ddns此处不做详述),默认账号:admin@example.com,密码:changeme;登录后记得修改账号密码

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

10、SSL证书申请,填写自己的域名,建议直接申请泛域名,例如自己的域名为a.com,那么此处填写 *.a.com和a.com,所有子域名都可以用此证书;邮箱随便填写,DNS提供商主要是域名当前哪解析,需要授权进行DNS验证(此处也不做详述,如有需求后续细说),等待1分钟证书已经申请完毕;npm同时提供Let's Encrypt证书的自动续期,后续无需再手动续期。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

11、配置代理,填写自定义的二级域名xxx.a.com,然后需要映射的服务IP地址和端口,选择刚才建立的SSL证书,开启强制SSL,保存完毕

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

12、域名解析商新增一条cname到ddns对应的域名即可,然后通过:https://xxx.a.com:58443 访问对应的服务。

NPM反代的优势

  • 对外服务都通过https访问,通信安全有保障,同时NPM提供自动续签减少人工维护成本。

  • 只对外暴露一个https的端口:58443,通过不同的二级域名进行内网服务区分;即使端口被扫,不知道域名也无法访问服务,端口+域名二者缺一不可。

FAQ

问:npm安装后,登录时报错:Bad Gateway。

[Docker]反向代理Nginx Proxy Manager安装设置安全访问NAS服务

答:这种是拉取的镜像与当前架构不一致导致的问题,拉取镜像时指定 2.10.4 版本即可,感兴趣的可以查看issue:https://github.com/NginxProxyManager/nginx-proxy-manager/issues/3631

问:群辉photos,ds file等都无法连接。

答:群辉photos,ds file软件http端口都是5000(一定不要用自定义端口),反向代理时指定到5000端口。群辉端口速查:https://kb.synology.cn/zh-cn/DSM/tutorial/What_network_ports_are_used_by_Synology_services

问:为啥一定要自定义端口?

答:家宽一般都屏蔽了80,443端口,所以需要用自定义端口替换

问:有没有不带端口的直接用二级域名访问的方案?

答:有,简单说下2个方案:隐性URL转发(域名须备案),CF配置端口转发(Page Rule

问:没有公网IP如何访问家庭服务?

答:配置cloudflare tunnel,勉强能用;询问运营商开通IPV6,有IPV6会简单很多

后记

通过npm配置基本实现了家庭web服务的安全访问,分享相关的经验给小伙伴们,有问题可以评论区一起交流探讨,后续不定期更新软路由/网络/NAS等文章,记得点赞关注转发加一键收藏。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

4099元起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

8899元起

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

4899元起

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

7196元起

Synology 群晖 DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

Synology 群晖 DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

1549元起

Synology 群晖 DS223J家用网络存储服务器nas私有云

Synology 群晖 DS223J家用网络存储服务器nas私有云

1299元起

Synology 群晖 DS124 四核心 单盘位 NAS网络存储 私有云

Synology 群晖 DS124 四核心 单盘位 NAS网络存储 私有云

1399元起

【豪礼自选】Synology群晖nas私有云主机DS923+网络存储器企业家庭用存储盘4盘位局域网共享硬盘盒群辉ds920

【豪礼自选】Synology群晖nas私有云主机DS923+网络存储器企业家庭用存储盘4盘位局域网共享硬盘盒群辉ds920

4950元起

群晖(Synology)DS124单盘位NAS网络存储服务器私有云智能相册文件自动同步

群晖(Synology)DS124单盘位NAS网络存储服务器私有云智能相册文件自动同步

1399元起

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

4099元起

synology群晖nas云存储ds920+中小型企业办公网络存储群辉家庭个人私有云盘四盘位NAS备份硬盘服务器ds918+(DS920+希捷企业级16T*4)

synology群晖nas云存储ds920+中小型企业办公网络存储群辉家庭个人私有云盘四盘位NAS备份硬盘服务器ds918+(DS920+希捷企业级16T*4)

14946元起

群晖(Synology)群晖(Synology)DS224+搭配2块希捷(Seagate) 4TB酷狼IronWolf ST4000VN006硬盘套装

群晖(Synology)群晖(Synology)DS224+搭配2块希捷(Seagate) 4TB酷狼IronWolf ST4000VN006硬盘套装

4527元起

Synology 群晖 DS416 企业级 NAS网络存储

Synology 群晖 DS416 企业级 NAS网络存储

暂无报价
20评论

  • 精彩
  • 最新
  • 之前用的群晖反代,最近一直纠结npm还是lucky,昨天换了lucky,确实界面美观,集成度高(常用的ssl、ddns、反代),就是没开源,方便还是lucky方便

    校验提示文案

    提交
    lucky听说简单易用,选择适合自己的就可以啦

    校验提示文案

    提交
    收起所有回复
  • 经过比较,我觉得没有lucky好用!!

    校验提示文案

    提交
    具体有啥优势呀,还没来得及用lucky [高兴]

    校验提示文案

    提交
    收起所有回复
  • 我直接端口 开放出去,用群晖自带的反向代理

    校验提示文案

    提交
    群晖自带反代也可以,就是维护证书比较麻烦吧

    校验提示文案

    提交
    用脚本自动签证也挺方便

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 我都是暴露端口,然后把密码设置成大小写字母,数字和特殊字符 [尴尬] [尴尬] [尴尬]

    校验提示文案

    提交
    主要是在外面用公共wifi啥的http不安全,并不是密码强度不够 [得意]

    校验提示文案

    提交
    收起所有回复
  • ikuai 有没有 好用的 docker 管理ui 呀,原生的太简陋了

    校验提示文案

    提交
    我都是portianer管理的,爱快估计装不了,权限没开放出来

    校验提示文案

    提交
    收起所有回复
  • 反代可以在家庭宽带使用80口,加油 [献花]

    校验提示文案

    提交
    哪个运营商的公网,这么干脆的 [高兴]

    校验提示文案

    提交
    收起所有回复
  • Bad Get Way 警告⚠️⚠️⚠️⚠️

    校验提示文案

    提交
    看FAQ第一条,基本是镜像和环境不匹配导致的

    校验提示文案

    提交
    收起所有回复
  • 安装了 NGINX, 说什么都无法从外网访问。。。 后来用了LUCKY, 一次性搞定。。。。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
137
扫一下,分享更方便,购买更轻松