宝塔面板免费SSL泛域名证书申请与自动化定时续签避坑指南 - BT.Panel

核心导读:手把手教您在宝塔面板申请Let's Encrypt免费SSL泛域名证书,配置DNS API全自动续期,彻底告别证书过期导致浏览器报红安全警告的尴尬。

宝塔面板免费SSL泛域名证书申请与自动化定时续签避坑指南

现代主流浏览器(Chrome、Edge、Safari)对未配置有效 HTTPS 证书的网站会直接弹出“您的连接不是私密连接”的全屏红色警告,导致 90% 以上的访客直接流失。

1. 单域名证书与通配符(泛域名)证书的区别

  • 单域名证书:只能保护例如 www.yourdomain.com,当您新增子域名 api.yourdomain.compay.yourdomain.com 时必须逐个重新申请。
  • 通配符泛域名证书(Wildcard SSL):一张证书保护 *.yourdomain.com 及所有二级子域名,方便统一维护与自动分发。

2. 申请 Let's Encrypt 通配符证书的标准流程

Let's Encrypt 签发泛域名证书必须通过 DNS-01 验证(解析 TXT 记录)。手动解析每次续期都需要手工填写,非常麻烦。最佳实践是利用 DNS 厂商的 API 密钥实现全自动静默续签:

第一步:在域名服务商处创建 API 密钥

  • 腾讯云 DNSPod:在控制台创建 API Token(ID 与 Token)。
  • 阿里云云解析:在访问控制(RAM)创建仅具备云解析权限的 AccessKey。
  • Cloudflare:在“My Profile -> API Tokens”生成专门的 Edit DNS Zone Token。

第二步:在宝塔中录入 DNS 密钥

  1. 进入宝塔后台【网站】-> 找到目标网站点击【设置】。
  2. 切换到【SSL】标签页 -> 选择【Let's Encrypt】。
  3. 勾选需要申请的通配符域名(如 yourdomain.com*.yourdomain.com)。
  4. 验证方式选择【DNS验证】,并在下拉菜单中选择您的服务商(例如 AliDNS 或 Cloudflare),填入 API 凭据。
  5. 点击【申请】,宝塔将通过 API 自动写入 TXT 解析并完成验证,几十秒内自动签发并部署!

3. 为什么自动续期会失败?常见四大踩坑点

  1. DNS API 密钥权限不足或过期:RAM 用户的访问密钥若被删除或过期,自动续期就会报错鉴权失败。
  2. CDN 开启了严格 SSL 回源限制:如果套了 Cloudflare 或国内 CDN,回源模式必须正确设置为 Full 或跟随证书。
  3. 80 / 443 端口被系统防火墙阻断:ACME 协议握手时若无法通过公网连通,会导致签发超时。
  4. 服务器本地时间不准确:Linux 系统时间如果偏差超过几分钟,会导致 SSL 握手时间戳校验失败。可通过命令校时:
bash
# 同步国家授时中心时间 ntpdate ntp.aliyun.com || chronyc makestep

常见问题与解答 (FAQ)

Q Let's Encrypt 证书的有效期是多久?

Let's Encrypt 证书官方统一为 90 天有效。宝塔面板内置的 ACME 客户端会在证书到期前 30 天自动发起静默续期任务,无需任何人工干预。

Q 开启强制 HTTPS 后网站出现排版混乱怎么处理?

这是典型的“Mixed Content 混合内容”问题,说明网页中引用了以 http:// 开头的 CSS 或 JS。只需将静态资源的链接改为相对路径或 https:// 即可恢复。

Q 多台服务器之间可以共享同一个泛域名证书吗?

完全可以。宝塔申请的证书密钥保存在 /www/server/panel/vhost/cert/ 目录下,直接复制粘贴到其他服务器的对应站点即可通用。

返回运维知识库