云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

宝塔面板免费证书申请,过期ssl自动续签https阿里云api失败方案

jxf315 2025-06-15 17:09:48 教程文章 2 ℃

本文讲讲宝塔面板免费证书申请,并使用阿里云api实现对过期ssl自动续签,实现网站https访问,同时对证书配置等各种失败给予答案。在开始之前,你需要确保你的网站部署并配置好,http方式是可以正常访问的,同时服务器安全组放行443端口;本文以阿里云api方式展开ssl证书到期实现自动续签的方法。

一、配置阿里云api账号

登录阿里云,如下图所示将鼠标移到头像上面,会有快捷入口,点accesskey进入。

然后点下图所示选择“使用RAM账户accesskey”进入。

点下图所示的“创建用户”。

下图所示,这时我们按要求填写,①填一个名称,如“dns_ssl_auto”,②填写一个描述,方便你自己识别该账户是干什么用的,③勾选“使用永久 AccessKey 访问”,这个主要用于生成ID和key。

点击确定之后会回到下图所示界面,新建的账号我们一定要先“下载cvs文件”,这个文件里面保存了我们刚新建的这个账号id和key,页面提示刷新或重新进入key将无法查看,所以这一步时要先把key保存到本地电脑。然后勾选“添加权限”继续。

下图所示的新窗口中,选择①账号识别,②搜索关键词“dns”,然后勾选“AliyunDNSFullAccess”后确定。

到此阿里云api账户的相关配置就完成了,主要是创建一个账号并赋予账户可以解析域名的权限。然后登录宝塔面板,打开网站设置——ssl管理这里。

二、宝塔面板配置dns验证

下图所示,选择“Let's Encrypt”,选择“DNS验证(支持通配符)”,下拉选择“阿里云dns”,因为没有配置过,所以后面显示的是“未配置”。

弹出来的窗口如下图所示,打开前面创建阿里云账号户时保存到本地的cvs文件,分别将AccessKeyIdAccessKeySecret填写到对应的框中,点确定继续。

三、宝塔面板申请免费ssl证书

接上面,会回到下图所示的界面,如果勾选“自动组合泛域名”,此时该域名下的所有二级域名都能使用ssl证书实现https访问哦!相当于你购买ssl证书的通配符域名证书呢,而且还是免费,这一点很棒。如果希望实现通配符域名证书的效果,就把“自动组合泛域名”前面的对勾选上,然后在“域名”勾选时,注意不要选择任何二级域名包括带www的也不要选,只选择顶级域名即可;如果只是希望带和不带www(即当前网站)可去掉前面的“自动组合泛域名”勾选,并勾选下面的全部域名即可。

然后点“申请证书”,这时系统就会自动申请并为我们安装好证书,最后点保存即可。到此,使用阿里云api方式配置证书就完成了。

四、配置宝塔ssl自动续签证书

要使用宝塔面板自动续签实现ssl证书自动续签,必须使用“dns验证”,我们前面已经配置好阿里云的密钥和key,同时也成功安装了免费的Let's Encrypt证书,所以实现自动续期也是完全没有问题的。

打开宝塔面板,①进入“任务计划”,下图所示,②添加任务,③任务类型选择“shell脚本”;任务名称填写“ssl证书自动续签”,这个可以随便填,方便自己识别即可,④设置执行周期,每周36时15分,这个可根据你的实际情况设置,建议为每周执行一次即可,⑤将下面的脚本代码复制粘贴到“脚本内容”里面,⑥选择“执行用户”为“root”,点确定即可。

自动脚本代码:

/www/server/panel/pyenv/bin/python3 -u /www/server/panel/class/acme_v2.py --renew=1

到此宝塔面板配置免费证书实现https访问,同时让系统自动续签就全部完毕了。

常见宝塔证书ssl失败的答疑

1、确保域名在阿里云,如果你的域名不在阿里云,那么本文是不适用的。

2、需要赋予阿里云的账号有管理域名dns的权限,如果没有,自动配置dns会失败,证书申请时也会失败。

3、宝塔面板当前支持的dns验证数量依然有限,如果选项中没有,那就确实不能使用dns验证来实现自动续期,可以通过其他方式。

4、如果还有其他问题,可留言评论,欢迎关注,持续分享更多优质经验。

最近发表
标签列表