宝塔面板里那条「续签Let’s Encrypt证书」计划任务,其实是用出来的

前几天给 VPS 加了个域名,在宝塔里签了 Let’s Encrypt 证书。签完习惯性去计划任务里找那条熟悉的「续签Let’s Encrypt证书」,结果是空的,「共 0 条」。当时还以为新版面板把自动续签去掉了。

后来在站点 SSL 页面点了一次「续签」,再刷新计划任务,这条任务就出现了。记录一下,省得下次又满世界找。

结论先说

新版宝塔(9.x、10.x、11.x)不再给新装的面板预置这条续签任务。它是面板在这两件事之后自己创建的:

  • 你为某个站点签发并部署过 Let’s Encrypt 证书;
  • 或者你在站点 SSL 页面手动点过一次「续签」。

所以计划任务列表为空,不代表续签功能没了,只代表这台机器还没被触发过。

这条任务长什么样

在计划任务里点「编辑」能看到全部细节:

字段
任务类型 Shell脚本
任务名称 续签Let’s Encrypt证书
执行周期 每天的 23:38 执行一次(等于创建它的那一刻)
执行用户 root(开启进程锁)
分类 默认分类
状态 正常

脚本内容只有一行:

 

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

这里有个细节:宝塔论坛 2021 年那篇老帖里给的命令是 --renew=1,而新版面板自动生成的这条用的是 --renew_v2=1。哪天任务被误删要手动加回来,用面板自己生成的这版参数更稳妥。

想手动加回来

计划任务 → 添加任务:

  • 任务类型:Shell脚本
  • 任务名称:续签Let’s Encrypt证书
  • 执行周期:每天,挑个服务器不忙的时间段
  • 执行用户:root
  • 脚本内容:上面那一行
  • 保存

每天跑一次足够。脚本会自己判断哪些证书临近到期,没有到期的直接跳过。

几个容易踩的点

点「续签」提示”未找到将到期的证书”

这是正常提示,不是证书坏了。Let’s Encrypt 只允许在到期前 30 天内续签,我签完那天还剩 88 天,点续签就是这个结果。等剩下二十几天再操作。

反代、301 的站点要额外留意

Let’s Encrypt 走的是文件验证(http-01),续签时 CA 需要能访问 你的域名/.well-known/acme-challenge/xxx。如果反向代理规则把这个路径也转给后端了,续签就会失败。宝塔官方也明确写过「网站开启反向代理/301 会导致续签失败」。我这台正好是反代站,这次签发成功只说明当时这条路是通的,以后续签失败,第一个要查的就是这里。

怎么看证书还有多久到期

网站列表里「SSL证书」那列会直接显示”剩余 N 天”。点进站点 → 设置 → SSL → 当前证书,能看到品牌、到期时间、订单状态和验证方式。

想再深一层核对,可以登录面板的终端看证书文件里的日期(宝塔一般把站点证书放在 /www/server/panel/vhost/cert/你的域名/):

 

openssl x509 -noout -dates -in /www/server/panel/vhost/cert/你的域名/fullchain.pem

一句话总结

计划任务里那条续签任务是用出来的,不是装好就有的。签完证书去站点 SSL 页面点一次「续签」,它就出现了,之后每天自己跑,不用再管。

 

原创文章,作者:admin,如若转载,请注明出处:https://www.uqvn.com/1637.html

(0)
adminadmin
上一篇 2天前
下一篇 12小时前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注