当前位置:首页 > NAS > 正文内容

Unraid远程SSL加密访问,ACME实现自动续期申请和替换系统证书文件

ym02301年前 (2023-03-21)NAS858

【写作说明】:补个坑,之前折腾完NAS,装Unraid系统,为了实现远程Https加密访问,使用Letsencrypt证书手动合成后替换到Unraid系统配置中,每3个月就要手动申请合成一次,实在麻烦。

最近折腾一些联想小主机,魔改BIOS和CPU,算是暂告一段,重新折腾下Unraid把自动证书申请续期和替换补坑,折腾好看到网上关于这个Unraid系统部署SSL远程访问和自动续期的教程很少,发出来给玩Unraid的小伙伴一个参考。

前两天看油管一个UP主各种吐槽Unraid,出个什么一篇就够了的视频,评论里被各种小伙伴怼,每个系统都有优缺点,自己喜欢就好,我买的正版Unraid,使用半年感觉还是不错的。

另外上篇关于联想M710Q/M910Q最新魔改BIOS及刷改教程,789代部分10代及魔改U的文章里,评论区有个小伙伴说发M710Q硬改增加M.2接口的,大家还在等着你的教程。

折腾理由

就是懒……

直达主题

前面废话够多了,直接开始

准备工作:

  1. 公网IP,路由器做好DDNS转发

  2. 阿里域名(或者其他域名自行变更)

  3. Unraid安装NginxProxyManager反向代理

  4. Unraid安装User Scripts脚本管理器

  5. 获取阿里账号的AccessKey

  6. Unraid管理权限设置

61934ba26b0c47154.png_e1080.png

开启代码模式,注意代码结构,空格不能取消,#位置为代码的解释,复制代码部分即可:

  • #创建ACME.SH,可以先在你准备把证书文件放置的文件夹中创建一个ACME文件夹,黑体部分为我的ACME.SH位置,***号部分填入你自己阿里账号获取的AccessKey

  • docker run --rm -itd -v /mnt/user/appdata/ACME:/acme.sh -e Ali_Key=******** -e Ali_Secret=******** --net=host --entrypoint /bin/sh --name=acme.sh neilpang/acme.sh;

  • #更改默认证书为letsencrypt,目前ACME.SH默认的证书是zerossl

  • docker exec acme.sh --set-default-ca --server letsencrypt;

  • #申请证书,将你自己的域名替换掉123445.com

  • docker exec acme.sh --issue --dns dns_ali -d 12345.com -d *.12345.com --force;

  • #安装证书privkey.pem,fullchain.pem,其实就是将申请的证书文件12345.com中的.cer和.key输出为.pem到ACME文件夹中,12345.com同样更改为你自己的域名

  • docker exec acme.sh --install-cert -d 12345.com --key-file /acme.sh/privkey.pem --fullchain-file /acme.sh/fullchain.pem;

  • #进入ACME文件夹,因为需要将两个.pem合并一个Unraid系统需要的certificate_bundle.pem文件,所以我直接进入ACME文件夹中操作,这个certificate_bundle.pem替换自己的系统/boot/config/ssl/certs文件夹中需要替换的pem文件名称

  • cd /mnt/user/appdata/ACME/;

  • #合并Unraid SSL文件,将ullchain.pem和privkey.pem合并成一个Unraid系统需要的SSL文件,名称certificate_bundle.pem根据自己的文件名修改

  • cat fullchain.pem privkey.pem> certificate_bundle.pem;

  • #剪切替换Unraid SSL证书路径中的/boot/config/ssl/certs/certificate_bundle.pem文件(注意文件名一致性)

  • mv /mnt/user/appdata/ACME/certificate_bundle.pem /boot/config/ssl/certs;

  • #复制证书到NginxProxyManager,将导出的privkey.pem,fullchain.pem两个文件复制到NginxProxyManager中,注意变更自己的路径,npm-*选择你自己custom_ssl文件夹下的最大值,我的最大值文件夹是npm-9

  • cp -rf /mnt/user/appdata/ACME/*.pem  /mnt/user/appdata/NginxProxyManager/custom_ssl/npm-9;

  • #重启NginxProxyManager

  • docker exec NginxProxyManager reboot

加粗的位置都是要修改的,有些路径可能也不用修改,还是一一检查的好,一共9行命令,使用User Scripts创建一个ACME或其他名称的脚本,将以上代码根据自己情况更改完成后填入到脚本中,设置* * * */2 *调用周期保存即可。

ZDM发代码有时候会乱掉,截图附上,注意代码结构,图片不知道看得清看不清,哎…

61934a8d58f799592.png_e1080.png

61934a8d543491149.png_e1080.png

61934adcaf7943569.png_e1080.png

我也不是专业的,对代码一知半解,以上汲取一些大佬的代码和经验,补充整合,有不正确的欢迎交流指正……

总结

根据自己的系统情况和路径自行变通,注意文件名称、路径一致性,系统SSL文件替换后管理权限中更新DNS就能看到证书有效期延长了,NginxProxyManager反向代理中如何设置我就不讲了,有很多教程。

年底有可能准备搬家了,最近带孩子折腾时间也少,搬过家之后再折腾一些智能家居,从家庭网络、智能控制系统、智能设备之类的折腾下。

PS:文章来自网络,原文地址

扫描二维码推送至手机访问。

版权声明:本文由嘉睿博客发布,如需转载请注明出处。

本文链接:https://tius.cc/?id=7

标签: UnraidSSLACME
分享给朋友:

“Unraid远程SSL加密访问,ACME实现自动续期申请和替换系统证书文件” 的相关文章

Linux Jellyfin 硬解4K HEVC HDR报错,“该客户端与媒体不兼容,服务器未发送兼容的媒体格式”

Linux Jellyfin 硬解4K HEVC HDR报错,“该客户端与媒体不兼容,服务器未发送兼容的媒体格式”

问题:Jellyfin 硬解4K HEVC HDR报错,“该客户端与媒体不兼容,服务器未发送兼容的媒体格式”ffmpeg日志报错示例:原因:硬件解码开启了“色调映射”,“色调映射”可以将视频的动态范围从 HDR 变换成 SDR,同时保持图像细节与颜色等对于表现原始场景非常重要的信息。目前仅对 HDR...

unraid作为ups主机,虚拟机黑群晖作成ups副机进行nut不间断电源联动详细设置教程

unraid作为ups主机,虚拟机黑群晖作成ups副机进行nut不间断电源联动详细设置教程

教程详情:首先,网上相关UPS设置教程,能找到的群晖和其他系统进行UPS联动的所有教程,都是以群晖作为UPS主机,其他设备作为副机。很多人都是Pve、Unraid、Esxi、Omv等宿主系统,虚拟群晖子机。必须直通USB给群晖,否则不能联动;虚拟群晖如果崩溃或者没有开机,那么宿主系统就连不上UPS了...

黑群晖忘记密码解决办法! 不用重装,不用重置

黑群晖忘记密码解决办法! 不用重装,不用重置

大家都知道,白群晖上有 RESET 按钮,如果忘记密码,只要按住四秒钟直到哔声响将会重设管理者密码,我们很多人装的是黑群晖,根本没有reset键,如果你也没有设置找回邮箱,那忘记密码怎么办?这里我分享一种解决办法,说说原理:修改/etc/shadow文件,此文件也是linux系统上保存账户密码文件,...

群辉SurveillanceStation-x86_64-9.1.1-10728开心办法

群辉SurveillanceStation-x86_64-9.1.1-10728开心办法

[password]方法1、官网下载https://global.synologydownload.com/download/Package/spk/SurveillanceStation/9.1.1-10728/SurveillanceStation-x86_64-9.1.1-10728.spk手...

玩PT,在NAS上如何做种子文件

玩PT,在NAS上如何做种子文件

【写作说明】:刚刚开始玩PT,在NAS上有文件想分享,可是如何做种子呢?不会,在电脑上很容易,但在NAS上,常用的qbittorrent是没有生成种子的菜单的,怎么搞呢,难住我了,好不容易在PT贴吧中找到一个方案,结果贴主写的太简单,对新手来说,交代的不够全面,折腾了好几天,总算搞定了,所以,特意发...

TrueNAS SCALE中添加 jellyfin电影服务器容器实列

TrueNAS SCALE中添加 jellyfin电影服务器容器实列

教程开始docker版的jellyfin镜像地址是 https://hub.docker.com/r/linuxserver/jellyfin网站提供的参考 cli指令docker run -d \   --name=jellyfin \...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。