文档首页> 上云指南> SSL 证书迁移注意事项

SSL 证书迁移注意事项

发布时间:2025-12-17 22:52        更新时间:2025-12-18 05:26
换服务器时,SSL 证书经常被当成附件一起拷过去,能跑,但坑都埋在后面。证书迁移有三个环节值得单独拎出来说。 私钥是第一优先级 证书文件和私钥配对才能用,私钥丢了等于证书报废。老环境在虚拟主机上时,很多面板不提供私钥导出,这种情况只能重新签发;自己管理的服务器上,找到当初的 .pem 和 .key 文件妥善保存,迁移时一起带走。还有一条铁律:私钥一旦泄露过,无论证书有没有到期,都要重新签发。私钥文件权限收紧到 600,属主给 root,别让它躺在网站目录里等着被人下载。 重新签发还是直接搬 直接搬适合证书还有较长有效期、私钥在手的情况,五分钟配好。重新签发适合两种场景:私钥拿不到,或者证书快到期。免费的单域名证书签发几乎是实时的,配合 acme.sh 这类工具可以自动续期;带企业信息验证的证书签发要一到三个工作日,迁移窗口定下来就该提前办。自动续期配好后用强制续期参数实测跑一轮,确认能签下来并 reload nginx,别等到期那天才发现脚本早坏了。到期时间也要心里有数:接进监控,或者写一条 crontab 定期用 openssl 检查剩余天数。 证书链要完整 只部署域名证书、不带中间链,桌面浏览器可能没事,部分手机浏览器和程序内的 HTTP 库就会报证书链不完整。nginx 里要用 fullchain 全链文件而不是裸的域名证书。验证方法: openssl s_client -connect 域名:443 -servername 域名 | grep -E "depth|verify" 看到 verify return code: 0 (ok) 才算链完整。nginx 配置里对应两行:ssl_certificate /etc/nginx/fullchain.pem; ssl_certificate_key /etc/nginx/privkey.pem;,路径按实际改。 最后把证书到期日写进监控清单。证书过期导致站点无法访问的事故年年都有,全是不该发生的那种,一条告警就能避免。迁移当天再做一次全域名检查:主域、www、接口子域各 curl 一遍 https,漏一个子域就是一次线上事故。