Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)
本篇介绍Truenas Scale 23.10的自动申请证书,以及设置邮件报警。自动申请证书,可以让你在外网访问truenas时更加完全;邮件报警,可以让你及时接收系统的异常信息,第一时间进行处置。
一、自动申请证书
1.准备工作
要自动申请证书,首先你要有一个域名,最好是托管到cloudflare。如果无法托管到cloudflare也可以,就是申请证书时候会麻烦一点。同时,要获取域名服务商的API访问密钥。
其次,如果要在局域网中使用域名访问,可以在路由器上进行域名劫持,或者在本地计算机上修改host文件,从而使域名解析到truenas的内网地址;要在外网使用域名访问,如果truenas有固定外网ip的话直接将域名解析到truenas上就行了,不过家用情况更多的是使用ddns解析到路由器上,再进行端口转发。
我这里以内网访问为例,你如果想使用外网访再加一步端口转发就行了。
2.托管到cloudflare上的域名证书申请
(如果你的域名不在cloudflare上,可以直接看下一步的方法)
①添加DNS身份验证器。在Truenas Scale中点击左侧<用户凭证> - <证书>,在打开的证书管理界面中,找到“ACME DNS身份验证器”一栏,点击<添加>:“名称”随便填写一个;“身份验证器”选择cloudflare,选项里面还包括route53、OVH这两个域名服务商,以及shell自定义选项,如果你的域名托管在route53或者OVH的话直接选择相应的就行了;“Cloudflare Email”填写你的登录邮箱;“API密钥”填写你的cloudflare API密钥,不懂怎么获取可以搜索一下教程很多。然后保存。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d70e24d7ba8180.png_e1080.jpg)
②添加证书签名请求。在上方“证书签名请求”一栏中点击<添加>,具体填写示例如下
![“名称”随便填写一个,可以填写域名方便识别;“类型”选择证书签名请求](https://qnam.smzdm.com/202404/03/660d750463cc99778.png_e1080.jpg)
![证书选项全部默认就可以](https://qnam.smzdm.com/202404/03/660d7397a3d286117.png_e1080.jpg)
![证书主题前面几项随便填都可以,最后一项填写你需要使用的域名](https://qnam.smzdm.com/202404/03/660d75b0d22087949.png_e1080.jpg)
![额外的约束默认就可以](https://qnam.smzdm.com/202404/03/660d76198f2456992.png_e1080.jpg)
![最后确认保存](https://qnam.smzdm.com/202404/03/660d7638bde688074.png_e1080.jpg)
③创建证书。创建证书之前,打开<用户凭证> - <本地用户>,先编辑你的管理用户root或者admin用户,添加上email,否则最后一步填写完不能保存,会提示你添加邮箱。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d7a023f5a89717.png_e1080.jpg)
然后回到“证书”界面,在“证书签名请求”这一栏,找到刚才生成的证书签名请求,点击后面的扳手图标添加证书。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d779388b183598.png_e1080.jpg)
在出现的“创建ACME证书”界面中:“标识符”随便填写一个,为方便识别这里填写域名;勾选“服务条款”;“续签证书天数”默认10天,也就是证书到期前10天会自动续签;“ACME服务器目录URL”选择Let's Encrypt Production Directory;“DNS”那里选择之前创建的cloudflare身份验证器。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d77c4703985127.png_e1080.jpg)
点击保存之后就行开始申请证书了。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d78d5e114a574.png_e1080.jpg)
完成后,在“证书”栏中可以看到新申请的证书。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://am.zdmimg.com/202404/03/660d7a745ed5e9305.png_e1080.jpg)
打开<系统设置> - <常规>界面,在“GUI”栏点击<设置>,“GUI SSL证书”选择新申请的证书,点击保存。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e7b822ff142217.png_e1080.jpg)
提示“重启网络服务”,勾选“确认”,<继续>。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e7bc86c59a5917.png_e1080.jpg)
再使用域名访问,就可以看到安全连接了。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e7d474ef4e5339.png_e1080.jpg)
3.托管到其它域名服务商上的域名证书申请
这里以阿里上的域名为例进行演示。
在系统中创建一个数据集存放申请证书的脚本,我创建的数据集名称为acmeScript。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/03/660d7c194d43d6610.png_e1080.jpg)
由于接下来的操作需要使用命令行,因此要先ssh连接到truenas。
在<系统设置> - <服务>中启用ssh服务。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660d7de3203f85786.png_e1080.jpg)
接着打开<用户凭证> - <本地用户>,编辑admin用户,勾选“SSH密码登录已启用”。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660d7e652fe8e3620.png_e1080.jpg)
然后通过termius等工具连接truenas,输入以下命令:
cd /mnt/DATA/acmeScript
sudo git clone https://github.com/acmesh-official/acme.sh.git //回车后需要输入密码
sudo nano acmeShellAuth.sh //回车输入密码后进入nano编辑器
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660d810ddd74a5005.png_e1080.jpg)
然后复制粘贴以下脚本,注意画框的3个地方要修改为自己的,然后按【ctrl】+【O】,再按【enter】保存,按【ctrl】+ 【X】退出。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://am.zdmimg.com/202404/04/660e83d1a8c222626.png_e1080.jpg)
这个地方好像无法编辑代码块,我贴在我的博客里了,大家可以直接复制,地址:https://www.nasgeek.cn/acmeshellauth-sh。
然后设置脚本权限,输入命令:
sudo chmod 700 acmeShellAuth.sh
接着添加DNS身份验证器。在<用户凭证> - <证书>界面中,找到“ACME DNS身份验证器”一栏,点击<添加>:“名称”随便填写一个;“身份验证器”选择shell;“Authenticator script”填写脚本路径,/mnt/DATA/acmeScript/acmeShellAuth.sh;“Running user”填写root;后面“超时”和“Propagation delay”都填写120。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e7fdf2e1209917.png_e1080.jpg)
保存之后就可以看到多了一个身份验证器。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e80a0250a48913.png_e1080.jpg)
接下来的操作与上面使用cloudflare申请证书是一样的,请看上面第2部分“托管到cloudflare上的域名证书申请”。
![添加证书签名请求,申请证书](https://am.zdmimg.com/202404/04/660e84a80a1574013.png_e1080.jpg)
![生成了新的证书](https://am.zdmimg.com/202404/04/660e84dcd24a93730.png_e1080.jpg)
![系统GUI 证书修改为阿里云域名的证书](https://qnam.smzdm.com/202404/04/660e851bb1b021439.png_e1080.jpg)
用阿里云的域名访问,可以看到也是使用了安全连接。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e85cafce3a3016.png_e1080.jpg)
二、邮件报警
打开<系统设置> - <常规>,在“电子邮件”这一栏点击<设置>:“发送邮件方法”选择SMTP;“发信电子邮件地址”填写你的邮箱地址;“发信人名称”随便填写;“邮件发送服务器”、“邮件服务器端口”、“安全”、“SMTP认证”等根据你的邮箱smtp设置填写。
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://am.zdmimg.com/202404/04/660e87854ffd15925.png_e1080.jpg)
填写好之后,点击<发送测试邮件>,设置正确的话就可以收到如下邮件了:
![Truenas Scale 23.10设置保姆教程(自动申请证书、邮件报警)](https://qnam.smzdm.com/202404/04/660e889625d1a3547.png_e1080.jpg)
以后系统的报警信息就会自动发送到你的邮箱了。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
![](https://res.smzdm.com/pc/pc_shequ/dist/img/the-end.png)
YunHi
Authorization for identifier Identifier(typ=IdentifierType(dns), value='xxx.xxxxxxx.cn') failed.
Here are the challenges that were not fulfilled:
Challenge Type: dns-01
什么原因创建不成功
校验提示文案
YunHi
Authorization for identifier Identifier(typ=IdentifierType(dns), value='xxx.xxxxxxx.cn') failed.
Here are the challenges that were not fulfilled:
Challenge Type: dns-01
什么原因创建不成功
校验提示文案