本篇教程承接上一篇,补充几点进阶使用技巧。
上一篇保姆教程可以看这里
上一篇为了方便大家理解。把解析和代理单独拿出来讲。
这篇主要分三个部分。泛解析、批量编辑反代规则、反代规则备份与还原。
不多废话,我们开始。
首先是泛解析。
开始之前再次推荐站内的申请免费泛域名证书的教程
unraid 篇一:群晖使用任务计划实现Let's Encrypt 泛域名证书自动更新做反代一定要申请泛域名证书,否则将毫无意义。
下面正式开始
在上一篇中,我们对每个二级域名都进行了独立的CNAME解析,为的是实现访问二级域名都能正常跳转我们的公网IP。
但是如果我们的反代规则很多很多,逐条添加CNAME解析记录就会非常麻烦。
想解决这个问题,提高便利性。就要用到泛解析这个功能。
切到dnspod的说明页面,很详细地描述了泛解析是什么。
普通泛解析是免费的,混合泛解析是收费的,大家酌情使用。
简单来说,我们可以通过解析*.xxx.com来实现任意前缀的二级域名访问。
打个比方。我们不需要添加emby.baidu.com、qb.baidu.com、tr.baidu.com那么多条记录。
只需要添加一条*.baidu.com记录,就可以访问所有以“.baidu.com”结尾的二级域名。
以上一篇为例。
我做了一条A记录解析,域名为ddns.xxx.top
然后把*.xxx.top设置成CNAME记录,指向ddns.xxx.top
这样就完成了泛解析,访问所有xxx.xxx.top的域名,都会自动指向ddns.xxx.top,也就是我的公网IP。
之后在群晖反代规则中使用任意的xxx.xxx.top域名都可以,不需要再逐条添加CNAME解析记录。效率大大提升。
可能有人问为什么不在DDNS的时候直接解析*.xxx.top域名,还要绕一圈做CNAME解析?
因为 不少DDNS脚本并不支持泛解析 ,所以先做一条A记录,再用CNAME记录来做指向是通用性最好的。
如果你的DDNS脚本或者DDNS工具本身就支持泛解析,可以直接把*.xxx.top设置成A或者AAAA记录实现泛解析。
这里注意,单条解析的优先级高于泛解析,如果配置有单条解析,系统会优先执行单条配置的规则。
如果有特殊需要,直接添加单条解析记录即可,不会被泛解析影响。
以上就是泛解析的使用方法,其实也很简单,大家慢慢消化。
下面是群晖反代规则批量编辑管理,和备份与还原其实算一部分。
开始之前提醒一下。建议执行各类命令都是用root账户或root权限执行,避免出现各种权限问题。
群晖的反代也就是nginx,配置存放在如下路径。
/usr/syno/etc/www/ReverseProxy.json
ReverseProxy.json就是反代服务器的规则配置文件。
打开ReverseProxy.json可以看到我们的具体配置。
以7.X系统为例
代理域名、端口、协议所有全部参数都在配置文件中。
直接修改配置文件保存即可。
如果反代规则很多,直接把配置文件拷贝出来。
用文本编辑器批量搜索替换端口或者域名,完成以后保存。
把编辑替换以后的ReverseProxy.json配置文件,拷贝回/usr/syno/etc/www目录替换旧的配置文件。
并赋予配置文件644权限,重启nginx服务即可。
赋予权限以及重启nginx命令如下
6.X系统
chmod 644 /usr/syno/etc/www/ReverseProxy.json
/usr/syno/sbin/synoservice --restart nginx
7.X系统
chmod 644 /usr/syno/etc/www/ReverseProxy.json
/usr/syno/bin/synosystemctl reload nginx
以上就是批量编辑群晖反代配置的方法。
不用再在群晖webUI一条条点开编辑了。换域名或者换端口改IP都非常方便。
最后是反代配置文件的备份恢复。
其实就是ReverseProxy.json配置文件的备份和恢复。
我已经写成一键脚本。大家下载脚本配置好自己的备份目录,并在计划任务中添加定时自动执行脚本即可。
脚本中有注释说明。
备份脚本会自动备份最新配置文件到backup_new目录,上次备份移动到backup_old目录,依此类推。
恢复脚本会把backup_new目录下的配置文件恢复到系统设置中。
有修改反代配置文件需求的同学,可以把修改好以后的ReverseProxy.json文件放入backup_new目录下,利用恢复脚本自动恢复配置,达成一键修改的目的。
简单说下脚本使用流程
比如我打算把反代配置文件备份在
/volume1/docker/nginx_backup 路径下
就把备份路径填入nginx_backup.sh、nginx_recover.sh两个脚本中的BACKUP_HOME=之后
这样就可以了。
需要备份就执行nginx_backup.sh脚本
需要恢复就执行nginx_recover.sh脚本
脚本可以存放在本机任意位置
执行时输入 sh 脚本绝对路径 即可
比如我的脚本存放在/volume1/SuperHDD/nginx_backup.sh
只要执行如下命令即可
sh /volume1/SuperHDD/nginx_backup.sh
根据自己具体路径来,不要死记硬抄。
定时备份只需要把执行脚本命令sh /volume1/SuperHDD/nginx_backup.sh加入计划任务即可。
注意计划任务执行权限也要选择root账户,避免出现各种权限问题。
脚本分DSM6、DSM7两种,分别适配两种系统(备份脚本通用,恢复脚本不通用。)。大家按需使用即可。
脚本下载地址
文件文件大小:2.2 K|www.lanzoui.com去看看https://www.lanzoui.com/if7SAvukr3g
今天教程到此结束,完结撒花。