搜索

本站使用Let’s Encrypt SSL证书的历史大概可以追溯到四年前本站搬到腾讯云的时候,Oneinstack可以通过acme.sh一键部署带Let’s Encrypt SSL证书的虚拟主机。
在这四年来,Let’s Encrypt SSL证书一直都会自动续期。我每三个月就会从云服务器上下载SSL证书,然后安装到腾讯云CDN上。
直到上个月开始每天十二点都会收到一封邮件:

解决acme.sh无法续期Let’s Encrypt SSL证书问题

于此同时腾讯云也在提醒CDN的SSL证书即将过期,我像往常一样,用SSH登录云服务器,发现证书并没有更新。
于是有了本文。

无法访问Github

执行crontab -l,查到acme.sh的定时脚本命令。
切换到安装acme.sh的文件夹,执行./acme.sh -cron -home

解决acme.sh无法续期Let’s Encrypt SSL证书问题

因为国内你懂的的网络环境,导致无法从Github下载验证DNS的脚本,因此无法续期SSL证书。
把以下内容粘贴到/etc/hosts即可

140.82.114.4     github.com
185.199.108.153    github.github.io
199.232.69.194   github.global.ssl.fastly.net
199.232.28.133 raw.githubusercontent.com

文件验证链接无法获取结果

在Oneinstack的vhost.sh脚本中,绑定域名为单个泛域名时,如:oneinstack.com *.oneinstack.com,证书签发走acme.sh dnsapi模式,需要输入API相关变量,否则走acme.sh webroot模式。但也可执行./vhost.sh --dnsapi强制使证书签发走dnsapi模式。
如果使用webroot模式,又使用了ThinkPHP一类的框架,可能就会出现问题。

解决acme.sh无法续期Let’s Encrypt SSL证书问题

可以将原来使用webroot模式续期SSL证书的网站改为使用dnsapi模式续期。
将Le_Webroot的内容由网站文件路径改为dnsapi名称再重新执行续期即可,例如阿里云DNS是dns_ali
解决acme.sh无法续期Let’s Encrypt SSL证书问题

解决acme.sh无法续期Let’s Encrypt SSL证书问题

如果从未使用过DNSAPI功能,可能需要到dnsapi目录寻找你所用的DNS服务商的脚本填写API信息,才能使用这个功能。

OneinStack SSL acme.sh Let’s Encrypt

版权属于:Lzy20021010
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
0
查看目录

目录

来自 《解决acme.sh无法续期Let’s Encrypt SSL证书问题 》
评论

Lzy20021010

勇气带着我飞翔 降落希望的地方
© 2021 Lzy's Hobby
工信部ICP备案号 闽ICP备18019376号-1
公安网安部门备案号 闽公网安备 35052102000284号
Server by Aliyun
Powered by Typecho 
本站支持 IPv6 访问