Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

2020-01-21 10:40:49 66点赞 726收藏 125评论

创作立场声明:本文为个人折腾记录分享,仅供参考,教程部分都比较简略,具体操作可以参考其他大佬的文章,有错误或遗漏的地方欢迎指正和讨论,谢谢。

NAS之前

一年前的用着老师代言的玩客云,挂了一块不知从哪里淘来的 2T 绿盘,觉得网络存储不过如此Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

如今,在张大妈社区和各路矿渣大神的安利下,终于整上了一台真正意义上的 NAS。

受限于 USB 2.0 的接口以及硬件配置,母鸡终究是架不住 4K 视频的局域网播放,PT 下载也存在诸多限制和安全问题,于是老母鸡最终沦为了大姐姐的移动房车Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

对 NAS 设备的需求是随着各种软硬件升级而日益增长的,从大一时折腾的 newifi mini 到研一入的矿渣 newifi3,从本科时的游戏本到后来的 APU itx 主机(AMD YES!Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 )再到 NUC 主机,从 PC 到黑五的 xbox one s,从字幕组资源到 WEB-DL 到原盘和 remux 再到正版 UHD 碟片,从 Linux 小白到准程序员,从英语四级到维语六级(误),从 BT 到 PT,从区块链的火热到矿渣的崛起Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 ,这一切的因素(强行)促成了这台 NAS 设备——暴风播酷云二期的购入。

(当然还是因为钱包啦,毕竟经济基础决定上层建筑Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

瓢自英亚,来自巴黎和巴塞罗那身经百战的两套碟瓢自英亚,来自巴黎和巴塞罗那身经百战的两套碟

废话说完(刚从武汉回家Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 ) 。其实目前我对 NAS 的认识和需求还处在比较初级的阶段,毕竟手上只有两块不大的硬盘,暂时也不打算组磁盘阵列或上校验盘。本文主要记录如何从外网通过 jellyfin.xxx.ml 这样的域名来远程访问 unraid 上的 Jellyfin 媒体服务。

我的Jellyfin服务

第一次写文比较啰嗦,先送上主要目录:

  • Unraid 安装和设置

  • 光猫改桥接

  • 域名申请与域名解析

  • Nginx Proxy Manager 设置

硬件准备

前提:宽带能够获取公网 ip,没有的话需要致电运营商申请,不然就跳过本文章转战内网穿透吧Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

之前主要用到的穿透方案有两个,frp zerotier,frps 配置在一台云服务器上,一般用于路由器及 unraid 的设置和 tr 下载控制,适合数据传输量较小的场景,而 zerotier 用于视频播放、samba 文件访问等操作。

手里的一些硬件:

光猫(湖北联通 wo-27s)+路由器(极路由3刷 padavan,只有一个千兆 LAN 只能分配给 NAS 了...目前种草 Redmi AC2100,毕竟还能加速 xbox 联机游戏)

暴风二期 680 包邮,被阿文菌的 J3455 文章种草Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 ,在折腾过 N1 小钢炮和星际魔盒之后,深感 Arm 下docker 的局限,眼看着上半年看不上的蜗牛 J1900 价格上涨,一狠心便直接入了暴风。不过自己抠了两个 4k remux 后就后悔了,jellyfin 网页端实在带不动这个转码Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 看看人家司波图的 G5400。好在 kodi 直接播放没有问题。

粒子云拆机盘 东芝4T 450 包邮,性价比优势

旧西数绿盘 2T,NTFS 格式,保留之前的各种文件

闪迪 16G 2.0 U盘,unraid系统引导盘,官方 wiki 指出 2.0 的 U盘更适合做系统引导,越小越好

一台用于访问网页配置的PC/笔记本/平板/手机等

Unraid 安装和设置

安装部分可以参考阿文菌等大佬的教程

NAS教程:手把手教您 3分钟安装UNRAID系统 并设置硬盘共享文件 Docker容器APP前言大家好,俺又来了!久等了!UNRAID是一款类似NAS的操作系统,和PVE、ESXI很像,但又很不同。在我使用了大半个月后,已经完美搭建出自己的家用NAS服务器,我觉得非常好用,所以推荐给大家。老规矩,废话少说,本文都是干货,欢迎大家提前点赞、点收藏,谢谢大家的支持!下面这篇关于UNRAID的介阿文菌| 556 评论414 收藏3k查看详情

这里简单叙述一下欢乐版安装过程(按照 help 文档操作安装成功,我给翻译翻译):

  1. 自行搜索 6.7.2 换乐下载地址,一个毛子的页面,四组地址随便选一组,下载两个 7z 文件并解压

  2. 打开 Unraid.USB.Creator.Win32-1.6.exe,选择U盘并写入系统

  3. 将 Crack 文件夹下的两个文件拷贝到U盘根目录,覆盖同名文件

  4. U盘插入 NAS,开机(进 bios 设置U盘引导启动)

  5. 路由器后台找到 NAS 的 ip 地址,进入 unraid 安装界面

  6. 找到 GUID 的值,例如 0781-5571-0000-040xxxxxxx30,记录下来,关闭 NAS,拔下U盘

  7. 打开 keymaker.exe,输入 GUID,生成 BTRS.key 文件

  8. 将 BTRS.key 复制到U盘 config 文件夹

  9. U盘插入 NAS,开机设置

后来更换过一次U盘,将原U盘所有文件复制到新U盘,按照流程重新生成一个 key 文件覆盖就行了

(工作后一定支持正版Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

基本设置可参考其他大佬的教程,这里补充一个挂载 NTFS 等格式硬盘的设置:

Unassigned DevicesUnassigned Devices

在 unraid 的 APP 页面搜索 Unassigned Devices 并安装,打开 Array 的情况下在 Main 页面可以看到 Unassigned Devices,在相关硬盘后面点 Mount 就挂载上了,可以开启 AUTO MOUNT 和 SHARE 选项即开机自动挂载和 samba 共享。点击 Unassigned Devices 右边设置的图标可以找到 SMB Security 设置用户访问权限。

Network Settings 里将 Network protocol 修改成了 IPv4/IPv6 留给以后折腾 pt(现在还只有学校的 pt,放假回到家发现蝴蝶的 ipv6 关闭访问了,目前处于闲置状态,求药Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

Jellyfin 的安装和配置参考了阿文菌的文章和司波图的视频

光猫改桥接(仅个人测试,请视情况慎重修改)

以湖北联通 wo-27s 为例

进入光猫后台管理页面 http://192.168.1.1/cu.html

账号密码均为 CUAdmin,进入后可以在状态-网络侧信息里看到 *_INTERNET_B_VID_** 的模式为 PPP ,确认这里的 ip 是公网 ip

关键操作:进入基本设置-上行线路设置-WAN连接中,选择协议版本ipv4/v6,连接名称中选择刚刚那个名字带有INTERNET的连接,记下绑定端口,VLAN ID,确保已知宽带的账号密码,然后点击右下角的删除(慎重)

此时已删除了光猫的拨号网络,重启光猫,再次进入基本设置-上行线路设置-WAN连接,选择协议版本ipv4/v6,新建WAN连接,模式设置为Bridge(桥接模式)端口绑定与之前相同,业务模式选择 INTERNET,VLAN模式选择 改写,VLAN ID填入之前的ID,点击修改保存

光猫设置桥接模式光猫设置桥接模式

路由器设置拨号(各路由器设置大同小异,略) 拨号成功后路由器后台可以看到公网 IP 地址

路由器设置 DMZ 主机,Padavan 为例:外部网络(WAN)-隔离区(DMZ),内网主机IP地址:选择 NAS 地址

域名申请与域名解析

Freenom 申请免费域名选择域名选择域名

注册登录,输入要申请的域名检查可用性,选择喜欢的域名并结算,结算时最多可以选择12个月免费试用。完成订单后,在 Services-My Domains 里可以看到已经申请的域名,这里可以先进行下一步添加 DNS 解析。点击 Manage Domain,选择 Management Tools,Nameservers,选中Use custom nameservers (enter below),输入 DNS 服务商提供的地址,这里以 alidns 为例,点击 Change Nameservers修改成功。

设置dns服务器设置dns服务器

添加 DNS 解析

以 aliyun 为例,进入云解析DNS控制台,用淘宝账号登录

添加域名,输入刚刚申请的免费域名。添加成功后,点击 域名-添加记录。记录类型选择 A 记录,主机记录填写 *

记录值先填写当前公网 ip

添加域名添加域名

添加记录添加记录

路由器设置 ddns,Padavan 为例:花生壳内网版-Aliddns,点 这里 查看如何获取 Aliddns 的 Access Key ID 和 Access Key Secret。获取后填入这两个值,*级域名填刚刚添加的域名 *.xxx.ml,启动域名解析服务,应用

Nginx Proxy Manager 设置

这里参考了人生观大佬的教程

在 unraid 的 APP 页面搜索 Nginx Proxy Manager 并安装,部署设置基本不用修改,记住端口号,例如 7818 是设置页面,1880 是 http 端口,18443 是 https 端口,可以先到路由器中设置一下端口转发,还是以 Padavan 为例,外部网络(WAN)-端口转发(UPnP),启用手动端口映射,将外网 80 和 443 端口转发到 Nginx Proxy Manager 对应端口

端口转发端口转发

安装完成后,在 DOCKER 页面可以找到 Nginx Proxy Manager,点击图标进入 WebUI 配置。或者通过 http://tower:7818 进入

第一次登录的账号密码是

Email address: admin@example.com

Password: changeme

进入后修改账号密码

Let's Encrypt 申请免费 SSL 证书

这里使用 docker 安装免费的 Let's Encrypt SSL 证书

unraid 里打开网页 Terminal,也可以用 ssh 登录到 unraid

Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

拉取 docker 镜像

docker pull neilpang/acme.sh

创建文件夹保存证书

mkdir ~/acme.sh

运行 acme 程序生成证书,这里的 Ali_Key 和 Ali_Secret 和前面配置 DDNS 用到的值一样,最后的 *.xxx.ml xxx 替换成自己的域名,前面的 * 不能漏了

docker run --rm

-v ~/acme.sh:/acme.sh

-e Ali_Key="***********"

-e Ali_Secret="*******************"

neilpang/acme.sh --issue --dns dns_ali -d *.xxx.ml

脚本运行完毕后 docker 容器会自动删除,这时证书文件被保存到了 ~/acme.sh 目录下,可以使用 cp 命令将证书目录复制到已共享的文件夹下,然后通过 samba、file browser 等方式下载证书文件到电脑

cp ~/acme.sh/*.xxx.ml/ /mnt/user/Downloads/*.xxx.ml/

回到 Nginx Proxy Manager 后台,进入 SSL Certificates,点击 Add SSL Certificate-Custom

Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

Name 随便填写,Certificate Key 选择证书文件夹下的 _.xxx.ml.key,Certificate 选择 fullchain.cer,点击 Save 保存

所有准备工作完成,最后就是添加反向代理设置了

进入 Proxy Hosts 页面,点击 Add Proxy Host,我的 jellyfin 设置如图,不打码Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

设置代理主机设置代理主机

在SSL标签页中选择刚刚添加的SSL证书,选中Force SSL,最后保存

打开强制https打开强制https

接下来,浏览器输入域名 jellyfin.xxx.ml,可以访问则配置成功了Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

添加其他的 docker 应用同理,填写对应的域名和端口号即可

安卓手机使用 Chrome 浏览器访问并添加到桌面,会有神奇的事情发生Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

4G网络下Jellyfin转码播放4G网络下Jellyfin转码播放

附加推荐一个应用 heimdall,可作为 NAS 导航页使用,在 unraid APP 里搜索安装即可

heimdall安装heimdall安装

端口号设置好后还可以去 Nginx 中添加代理,如果需要使用 xxx.ml 这样的域名访问,需要另外生成 xxx.ml 的SSL证书。

总结

对于个人使用来说反向代理可有可无,一般使用导航页+普通域名+端口号即可,但是对于我等轻度强迫症来说端口号还是有点碍眼了Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 其实frp也能实现一样的效果,只不过访问速度会大打折扣

因此有一个公网 ip 还是会方便不少,外网访问速度也提高了Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

如今 IPv4 地址已使用殆尽,IPv6 即将成为主流,后面将会研究如何使用 docker 配置 aliddns 的 IPv6 版本,以及私有 Tracker 下载相关的 IPv6 设置(前提是先要加入组织啊Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 求大佬邀请)

Unraid尝鲜——设置反向代理实现泛域名访问Docker应用 新人投稿,欢迎讨论 unraid 更多玩法,有需要了解的我也可以去 red 上帮忙找找

NAS稳定运行中......Unraid尝鲜——设置反向代理实现泛域名访问Docker应用

家里用的联通宽带,联通的4g实测可以访问,电信网络无法通过80端口访问家里的nas,只能用端口号了

展开 收起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1792元起

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

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

2179元起

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

2049元起

ZSpace 极空间 Z4 4盘位 NAS存储 黑色 (J4125 8GB)

ZSpace 极空间 Z4 4盘位 NAS存储 黑色 (J4125 8GB)

2584元起

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

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

2190.84元起

QNAP 威联通 TS-453Dmini 4盘位NAS(J4125、8GB)

QNAP 威联通 TS-453Dmini 4盘位NAS(J4125、8GB)

暂无报价

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

3599元起

极空间私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云【配4T希捷酷狼硬盘】珍珠白

极空间私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云【配4T希捷酷狼硬盘】珍珠白

4299元起

TERRAMASTER 铁威马 F4-424 四盘位 NAS存储(Intel Celeron N95、8GB)黑色

TERRAMASTER 铁威马 F4-424 四盘位 NAS存储(Intel Celeron N95、8GB)黑色

2499元起

HUAWEI 华为 新品华为家庭存储nas家用网络存储主机扩容储存备份文件同步共享

HUAWEI 华为 新品华为家庭存储nas家用网络存储主机扩容储存备份文件同步共享

1999元起

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

1899元起

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

799元起

HIKVISION 海康威视 Mage20 2盘位NAS (4GB)

HIKVISION 海康威视 Mage20 2盘位NAS (4GB)

567元起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1846元起

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

1849元起

Synology 群晖 DS918+ 四盘位NAS(J3455、4GB)

Synology 群晖 DS918+ 四盘位NAS(J3455、4GB)

暂无报价
125评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

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

相关文章推荐

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