Unraid 篇二:aliyun+SWAG反向及部分踩坑配置
追加修改(2022-07-15 23:26:58):
遗漏补充: 证书秘钥的位置 在 appdataswagdns-confaliyun.ini 自行修改
swag进阶篇
https://post.smzdm.com/p/a606o440/
简介
SWAG项目:linuxserver/docker-swag
unraid上目前主流的两种反代方式就是用SWAG和Nginx proxy manager(以下简称NPM)这两个docker实现.
NPM其他基础教程很多了,这里就不详述了.优点就是可视化UI,配置无脑,但是需要另外再安装一个fail2ban或者在路由前端增加防火墙策略.
一开始我也是使用NPM很长一段时间的,试用过SWAG后,一下路转粉.
SWAG其实不难配置,linuxserver已经内置了很多很多常用的配置,大部分的其他需要反代的程序,只要简单去掉后缀,如果你连默认端口都没改,只要重启一下SWAG就可以马上生效,可以说非常无脑方便的了.跟NPM一样,也可以自动生成免费SSL服务器证书并补签
并且,SWAG是 内置了fail2ban , NPM作者是明确了不会在NPM中添加fail2ban.
fail2ban简单说就是一款轻量高效的防火墙,具体自行百度了解.
大妈上之前有大佬详述SWAG的文章
https://post.smzdm.com/p/akxzqzzk/
我这里主要具体说说我的实现和一些踩坑点,整合了一下,自己留个记忆
正文
本文只讲述基于aliyun的配置
1.修改Docker
设置-docker 停用docker后,点开高级视图,启用-保留用户定义网络-选项,保存后,重新开启docker
打开终端,输入:
docker network create dockernetwork
'dockernetwork'可以是你任意喜欢的名字
2.Docker安装SWAG
apps自行搜索SWAG
docker配置选项重点说明:
网络类型:修改成刚才修改的 'dockernetwork' - 在这之后和之前建立的docker,以后都修改成这个网络下,后面修改反代会非常便利
80,443端口:修改成自己喜欢的端口号 - 路由的端口映射以后只用映射这两个端口,其他全都可以关了,更加安全
URL : 填入你的阿里云注册的一级域名或者二级域名,如 abc.xyz , abc.efg.xyz
VALIDATION : dns - 因为本篇是基于aliyun配置
SUBDOMAINS : wildcard - 泛域名解析,后期添加其他反代,只需要在阿里云添加CNAME项就可以了
DNSPLUGIN : aliyun
ONLY_SUBDOMAINS : false - 因为主要用泛域名的方式,所以选择false
其他默认项,应用安装.
3.反代配置流程
域名配置
在aliyun的域名解析里,首先自行配置好A类型的泛域名(*.abc.xyz)的自动解析
再自行添加如 : nas.abc.xyz , jellyfin.abc.xyz , qbittorrent.abc.xyz 等 CNAME类型 的解析
unraid配置
A.先讲通用配置
打开unraid的文件夹, /mnt/user/appdata/swag/nginx/proxy-confs
刚打开来的时候,该文件夹下的文件命名方式都是如 adminer.subfolder.conf.sample 这样的
XXX.XXX.conf.sample 形式 , 把需要的配置.sample尾缀去掉
改成如 adminer.subfolder.conf 的文件 , 记事本打开文件,修改
以下用jellyfin为例,重点参数详解 :
划重点了
server_name jellyfin.*; - 将 jellyfin 改成你自己aliyun的CNAME字段
set $upstream_app jellyfin; - jellyfin 就是你的docker名称
set $upstream_port 8096; - 8096 jellyfin的docker所对应的http端口,8096就是安装的时候的默认端口
所以如果你的docker较多需要创建并反代的话,
docker名称和http端口最好默认,并记得修改网络为上文所述的dockernetwork ,
阿里云上做好CNAME记录 ,然后重启SWAG ,外网就通了.
B.反代docker以外的东西,比如虚拟机
通用配置也是修改上述的三个项目, 只需修改 set $upstream_app 后面为对应的局域网IP地址,如:192.168.1.XX
4.踩坑配置
下面讲讲我配到的踩坑配置,需要额外修改其他选项,方便自己留档,节约大家时间!!!
filebrowser篇
补图,万一代码被吞了
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name files.*;
include /config/nginx/ssl.conf;
client_max_body_size 0;
location / {
proxy_pass http://192.168.50.249:8084/;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
access_log off;
}
}
organizr篇
题外话 :
这个导航页是绝对神器 ,没玩过的强烈建议大家装了试试,有空了,我再补一篇关于以这个交互端下,我的整个家庭HTPC自动观影项目
具体功能有大神整理过
https://post.smzdm.com/p/amxkop7p/
另外如果喜欢轻量级的,也可以试试这个 muximux ,
功能没有organizr强大,但是主要也胜在能够在单个页面集成所有需要的书签
organizr需要把
organizr.subdomain.conf , organizr-auth.subfolder.conf
这两个都启用
organizr.subdomain.conf 文件添加以下
include /config/nginx/proxy-confs/organizr-auth.subfolder.conf;
organizr-auth.subfolder.conf
去掉下面这行 '#' 号 注释
auth_request /auth-0; #=Admin
80端口不要改 , 80端口不要改 , 80端口不要改
jellyseerr篇
复制overseerr配置修改相应参数即可
其他篇
评论区大家一起互助
5.总结反代流程
基础设置完成以后,以后再有其他反代配置需要添加的时候
1.阿里云添加对应 CNAME
2.修改 /mnt/user/appdata/swag/nginx/proxy-confs 文件的内容
3.重启SWAG
就是这么简单,而且遇到默认配置不行的时候,网上搜索niginx的通用配置放进去也能用,并且有fail2ban信仰加成 , 我仅仅花了1-2个小时就把NPM的反代搬到了SWAG上面
以上抛砖引玉,希望能帮助大家
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
flygmw
校验提示文案
布吉德峰
校验提示文案
云中道人
校验提示文案
醉浪
校验提示文案
渡口的一边
校验提示文案
大熊本熊
校验提示文案
万千11000
校验提示文案
-小踢-
校验提示文案
大熊本熊
校验提示文案
mg6630
校验提示文案
njsfcy
校验提示文案
雨落枫叶
校验提示文案
文灬武
校验提示文案
lp615
校验提示文案
fiohappy
校验提示文案
fiohappy
校验提示文案
lp615
校验提示文案
醉浪
校验提示文案
文灬武
校验提示文案
云中道人
校验提示文案
雨落枫叶
校验提示文案
njsfcy
校验提示文案
mg6630
校验提示文案
布吉德峰
校验提示文案
大熊本熊
校验提示文案
大熊本熊
校验提示文案
-小踢-
校验提示文案
万千11000
校验提示文案
渡口的一边
校验提示文案
flygmw
校验提示文案