最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
SSL 证书如何替换即将过期或已经失效的旧证书文件
时间:2026-08-25 08:20:48 编辑:袖梨 来源:一聚教程网
SSL证书过期后无法续期,必须重新签发并替换部署新证书;需依次完成申请验证、安全上传命名、精准更新服务器配置、验证后热重载,全程零停机。
SSL 证书不能“续期”,只能替换——即用新签发的证书文件,覆盖旧配置中的路径指向。整个过程无需停机,但必须严格按顺序操作,否则 HTTPS 会直接中断。
一、确认过期状态并立即申请新证书
别等浏览器报错才行动。登录原 CA 平台或云厂商控制台,查看证书详情页的“到期时间”。若剩余不足 7 天,立刻启动替换流程:
- 选择与原证书类型一致的 DV/OV/通配符证书(不强制沿用原平台)
- 优先用 DNS 验证:添加一条 CA 提供的 TXT 记录,5–10 分钟内可自动通过
- Let’s Encrypt 用户直接运行 certbot --apache -d example.com,自动完成验证+下载
- 下载后得到三个关键文件:domain.crt(站点证书)、domain.key(私钥)、ca-bundle.crt(中间证书链)
二、安全上传并规范命名新证书文件
把新证书传到服务器时,切忌覆盖旧文件。推荐做法:
- 上传至统一目录,如 /etc/httpd/conf/ssl.crt/ 和 /etc/httpd/conf/ssl.key/
- 文件名体现有效期,例如:example_com_2027.crt、example_com_2027.key、example_com_2027_chain.crt
- 执行 chmod 600 *.key,确保私钥仅属主可读
- 保留原证书备份(如 example_com_2026.bak.crt),故障时秒级回滚
三、精准更新 Apache 或 Nginx 配置
找到对应站点的虚拟主机配置(通常在 /etc/httpd/conf.d/ 或 /etc/nginx/sites-available/),修改 SSL 指令:
-
Apache:更新三项路径
SSLCertificateFile → 新.crt 文件绝对路径
SSLCertificateKeyFile → 新.key 文件绝对路径
SSLCACertificateFile → 新 chain.crt 路径(注意:SSLCertificateChainFile 已弃用)
-
Nginx:修改两项
ssl_certificate → 合并站点证书 + 中间链(.crt 文件内容追加 chain 内容)
ssl_certificate_key → 新.key 文件路径
四、验证无误后热重载生效
这一步跳过就等于埋雷:
- Apache 执行:apachectl configtest,显示 Syntax OK 再继续
- Nginx 执行:nginx -t,确认 test is successful
- 用 OpenSSL 快速核验:openssl x509 -in /path/to/new.crt -text -noout | grep "Not After",确认截止日期正确
- 最后热重载:systemctl reload httpd(Apache)或 nginx -s reload(Nginx)——连接不断,用户无感知