
SSL 证书的有效期有限。当它们过期时,您的网站会显示"不安全"警告,这会赶走访客。按时续期 SSL 对于维护信任和流量至关重要。本指南涵盖 Let's Encrypt 和付费 SSL 证书的续期,以及出现问题时的故障排除。
检查您的 SSL 过期日期
在续期之前,要了解您的 SSL 何时过期。有几种方法可以检查:
通过浏览器
单击地址栏中的锁定图标 → 证书 → 查找"有效期至"或"过期日期"。
通过 OpenSSL 命令行
openssl s_client -connect yourdomain.com:443 2>/dev/null | \
openssl x509 -noout -dates
通过在线工具
使用 AsiaGB SSL 服务器测试 asiagb.com/ssl-checker-zh.html — 输入您的域名并立即查看过期日期。
最佳实践:在过期前至少 30 天续期 SSL,以便有时间解决任何问题。对于付费 SSL,提前 45–60 天开始续期流程。
续期 Let's Encrypt
Let's Encrypt 证书有效期为 90 天。在 AsiaGB 托管服务上,续期通过 DirectAdmin 自动进行 — 您无需采取任何操作。
共享托管上的自动续期(DirectAdmin)
AsiaGB 托管服务已配置 Let's Encrypt 自动续期。系统每 60–75 天续期一次(过期前 15–30 天)。在 DirectAdmin → SSL 证书中检查状态。
使用 Certbot 手动续期(VPS / 专用服务器)
# 测试运行以检查哪些证书即将过期
sudo certbot renew --dry-run
# 执行实际续期
sudo certbot renew
# 仅续期特定域名
sudo certbot renew --cert-name yourdomain.com
为自动续期设置 Cron 作业
# 添加到 crontab -e(每月 1 日 03:00 运行)
0 3 1 * * /usr/bin/certbot renew --quiet && systemctl reload nginx
续期付费 SSL(RapidSSL、GeoTrust)
付费 SSL 证书的有效期为 1 年。续期流程涉及以下步骤:
第 1 步:下订续期订单
登录 billing.in.th → 我的服务 → 选择您的 SSL 证书 → 单击续期。AsiaGB 也在过期前 60 天发送提醒电子邮件。
第 2 步:生成新 CSR
在您的服务器上生成新 CSR(请参阅如何生成 CSR),并在续期表单中使用此新 CSR — 不要重复使用旧 CSR。
第 3 步:完成域名验证
CA 将向 [email protected] 或 [email protected] 发送验证电子邮件。单击验证链接以批准续期(对于 DV SSL)。
第 4 步:下载并安装新证书
收到新证书后,在您的服务器上安装以替换旧证书,然后重载您的网络服务器:
# Apache
sudo systemctl reload apache2
# Nginx
sudo nginx -t && sudo systemctl reload nginx
修复已过期的 SSL 证书
如果您的 SSL 已过期,并且您的网站显示"您的连接不是私密的":
- Let's Encrypt 已过期 — 运行
certbot renew --force-renewal。在 AsiaGB 托管服务上,联系支持以从 DirectAdmin 面板强制续期。 - 付费 SSL 已过期 — 您必须购买并安装全新证书。已过期的付费 SSL 从技术上讲无法"续期" — 必须重新颁发。
- 临时修复 — 如果等待新的付费证书,同时安装免费 Let's Encrypt 证书以恢复 HTTPS。
续期后验证
续期和安装后,验证所有功能是否正常:
- 在隐身窗口中打开您的网站,以绕过浏览器缓存
- 使用 SSL 检查器工具验证新的过期日期
- 验证证书链是否完整:
openssl verify -CAfile ca-bundle.crt certificate.crt - 也在移动设备上测试 HTTPS
在太晚之前设置 SSL 过期提醒
知道您的 SSL 何时即将过期可以让您有充足的续期时间。错过窗口意味着您的网站会显示安全警告,这会立即损害访客信任。以下是保持领先的实用方法。
来自 CA 的电子邮件提醒
证书颁发机构(如发行 RapidSSL 和 GeoTrust 证书的 DigiCert)在过期前 90、60 和 30 天向注册地址发送提醒电子邮件。确保您的计费账户上的联系电子邮件是最新的并经常被监控。
添加日历提醒
每次成功续期后,在 Google 日历或 Outlook 中记录新的过期日期,并提前 60 天设置提醒。这种低科技方法是可靠的,而且不需要成本 — 您永远不会措手不及。
使用 SSL 监控工具
UptimeRobot 等服务提供免费的 SSL 过期监控。添加您的域名,当证书接近过期时,它会自动向您发送电子邮件。您也可以随时在AsiaGB SSL 服务器测试扫描您的证书。
VPS 自动提醒脚本
如果您在 VPS 上管理 SSL,此脚本在剩余少于 30 天时发送电子邮件:
#!/bin/bash
# ssl-check.sh — SSL 剩余少于 30 天时提醒
DOMAIN="yourdomain.com"
DAYS_BEFORE=30
EXPIRY=$(openssl s_client -connect "$DOMAIN:443" -servername "$DOMAIN" 2>/dev/null \
| openssl x509 -noout -enddate | cut -d= -f2)
EXPIRY_EPOCH=$(date -d "$EXPIRY" +%s)
NOW_EPOCH=$(date +%s)
DIFF_DAYS=$(( (EXPIRY_EPOCH - NOW_EPOCH) / 86400 ))
if [ "$DIFF_DAYS" -lt "$DAYS_BEFORE" ]; then
echo "SSL for $DOMAIN expires in $DIFF_DAYS days!" | mail -s "SSL 提醒" [email protected]
fi
在续期时比较 SSL 证书类型
续期是评估您当前证书类型是否仍适合您业务需求的好机会。随着您的网站增长,升级到更高的验证级别会向访客传达更大的信任。
| SSL 类型 | 有效期 | 起价 | 最适合 |
|---|---|---|---|
| Let's Encrypt (DV) | 90 天 | 免费 | 个人网站、作品集 |
| RapidSSL (DV 付费) | 1 年 | 1,000 泰铢/年 | 中小企业网站 |
| RapidSSL 通配符 | 1 年 | 5,000 泰铢/年 | 多个子域名 |
| GeoTrust True BusinessID (OV) | 1 年 | 4,000 泰铢/年 | 高信任业务网站 |
| GeoTrust True BusinessID with EV | 1 年 | 7,000 泰铢/年 | 电子商务、金融 |
如果您目前使用 Let's Encrypt 并希望建立更多客户信心,在下次续期时升级到付费 DV SSL(如 RapidSSL,1,000 泰铢/年)是一项值得的投资,不需要对网站进行任何代码更改。
常见 SSL 续期问题的故障排除
即使经过仔细规划,您在续期过程中也可能遇到问题。以下是最常报告的问题及其解决方案。
DV 验证电子邮件链接已过期
DV 验证链接通常在 24–72 小时内过期。如果您的验证链接在您能够单击它之前就过期了,请通过 CA 门户网站请求重新发送验证电子邮件,或联系 AsiaGB 支持以从我们的一端启动重新发送。
安装后浏览器仍显示旧证书
这几乎总是缓存问题。尝试硬刷新(Ctrl+Shift+R / Cmd+Shift+R)或在隐身/私密窗口中打开您的网站。如果您使用 Cloudflare,从 Cloudflare 仪表板清除缓存 — CDN 边缘节点可能会缓存旧证书数小时。
SSL 续期后出现混合内容警告
当页面通过纯 HTTP 而不是 HTTPS 加载某些资源(图像、脚本、样式表)时,会出现混合内容。在 HTML 源代码中搜索以 http:// 开头的链接,并将其更新为 https:// 或协议相对形式 //。
Certbot 失败:"已发行太多证书"
Let's Encrypt 对每个域每周强制执行 5 张证书的速率限制。如果您达到此限制,请等待 7 天后重试。使用 --staging 标志来测试证书颁发,而不消耗速率限制配额:
# 测试而不影响速率限制
sudo certbot renew --staging