飞牛os配置证书自动续期
查看证书安装位置
需要先在设置-安全性中上传新的证书,上传完成后,可以通过以下命令查看证书存放目录
cat /usr/trim/etc/network_gateway_cert.conf | jq .
- 安装acme
curl https://get.acme.sh | sh -s email=my@example.com
飞牛os没有设置root密码可以先设置root密码
sudo passwd root
使用root用户操作
su
安装证书
设置阿里云账号获取RAM API key
export Ali_Key="sdfdsafa"
export Ali_Secret="fwefdsfde"#永久保存到acme.sh账户配置
/root/.acme.sh/acme.sh --register-account -m your@email.com
验证配置已保存
cat ~/.acme.sh/account.conf | grep SAVED_Ali
应该看到类似输出:
SAVED_Ali_Key='您的AccessKey ID'
SAVED_Ali_Secret='您的AccessKey Secret'
现在让我们颁发证书:
./acme.sh --issue --dns dns_ali -d aaa.xxx.com
证书会被安装到/root/.acme.sh/aaa.xxx.com_ecc/,将 aaa.xxx.com.cer和 aaa.xxx.com.key,上传到飞牛后台,会在/usr/trim/var/trim_connect/ssls里生成aaa.xxx.com/1749537553数字文件夹,类似这种/usr/trim/var/trim_connect/ssls/aaa.xxx.com/1749534584/,后面我们可以将证书直接安装到该文件夹里。
创建脚本问价目录
mkdir -p /var/task/
编写自动更新脚本
vim /var/task/cert-renew.sh
脚本内容如下
#!/bin/bash/root/.acme.sh/acme.sh --install-cert -d aaa.xxx.com --fullchain-file /usr/trim/var/trim_connect/ssls/aaa.xxx.com/1749537553/aaa.xxx.com.crt --key-file /usr/trim/var/trim_connect/ssls/aaa.xxx.com/1749537553/aaa.xxx.com.key
chmod 0755 /usr/trim/var/trim_connect/ssls/aaa.xxx.com/1749537553/aaa.xxx.com.crt
chmod 0755 /usr/trim/var/trim_connect/ssls/aaa.xxx.com/1749537553/aaa.xxx.com.key
sudo systemctl restart webdav.service
sudo systemctl restart smbftpd.service
sudo systemctl restart trim_nginx.service
给予权限
chmod a+x /var/task/cert-renew.sh
测试脚本是否正确
/var/task/cert-renew.sh
编写crontab,这里使用vim打开
export EDITOR=vim
crontab -e
加入如下内容
23 23 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
55 23 * * * bash /var/task/cert-renew.sh
这里是每天晚上11点23更新证书然后再11点55分安装证书