Renew SSL Certificate: Let's Encrypt and Paid SSL Guide

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 已过期,并且您的网站显示"您的连接不是私密的":

续期后验证

续期和安装后,验证所有功能是否正常:

在太晚之前设置 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

使用 AsiaGB 续期 SSL 证书

付费 SSL 从 1,000 泰铢/年起,包括 60 天的提前过期提醒和泰国支持团队的安装协助。

查看 SSL 证书