参考资料

  1. SSL配置的进阶问题
  2. windows ssl设置详细说明以及案例
  3. nginx ssl版本配置详细说明以及案例
  4. ssl证书不受信任问题详解
  5. 为什么需要SSL证书
  6. nginx ssl配置步骤
  7. 如何管理多个SSL证书
  8. 实现HTTPS自动跳转的详细说明

处理证书续订问题

详细说明

证书续订是确保服务持续安全运行的关键步骤,通常在证书到期前进行。主要步骤包括生成新证书、验证所有权、安装新证书、更新配置及验证。

适用操作系统

  • Windows Server (IIS, AD CS)

  • Linux (Apache, Nginx, Let's Encrypt)

  • macOS (Keychain Access)

证书有效性

  • 标准有效期通常为90天(如Let's Encrypt)至1年

  • 企业证书可能为1-3年

  • 根证书可达10年以上

配置示例

Nginx续订示例:

server {
    listen 443 ssl;
    ssl_certificate /etc/ssl/new_cert.pem;
    ssl_certificate_key /etc/ssl/new_key.pem;
    # 其他配置...
}

PowerShell自动续订:

Import-Module WebAdministration
Set-ItemProperty IIS:\Sites\Default Web Site -Name Bindings -Value @{
    Protocol="https";
    BindingInformation="*:443:";
    CertificateStoreName="My";
    CertificateHash=(Get-PfxCertificate -FilePath "C:\certs\new_cert.pfx").Thumbprint
}

调试与验证

  1. 检查工具:

    openssl x509 -in cert.pem -noout -dates
  2. 在线验证:使用SSL Labs测试(https://www.ssllabs.com/ssltest/)

  3. 服务重启:

    sudo systemctl restart nginx

注意事项

  1. 提前至少30天开始续订流程

  2. 确保私钥安全存储(权限600)

  3. 更新所有负载均衡器和CDN配置

  4. 维护证书吊销列表(CRL)和OCSP响应

  5. 记录证书到期日期并设置多重提醒

  6. 测试旧证书的兼容性(特别是老旧客户端)

  7. 确保时间同步(NTP服务正常运行)