生产环境中SSL证书申请与部署必须坚持“合规、稳定、可维护”原则,优先选用DigiCert等受信CA签发的OV/EV证书,严格规范CSR生成、DNS验证、完整证书链部署及HTTPS加固配置,并建立自动续期与到期告警机制。

生产环境中 SSL 证书申请与部署,核心是“合规、稳定、可维护”。不能只图快,更不能用自签名或短期免费证书凑合——浏览器会拦截、接口会失败、审计可能不通过。
一、选对证书类型和签发机构
生产环境必须使用受全球主流浏览器和操作系统信任的 CA 签发的证书。推荐选择 DigiCert、Sectigo(原 Comodo)、GlobalSign 或国内已获 WebTrust 认证的机构(如阿里云、腾讯云自有品牌)。避免使用仅支持国密或私有根证书的方案,除非明确要求且客户端可控。
- DV 证书:适合静态官网、营销页、API 文档站等无需体现企业身份的场景;验证快(分钟级),但无法显示组织信息。
- OV 证书:适用于企业官网、客户后台、SaaS 平台等;需提交营业执照、域名归属证明,审核1–3个工作日;浏览器地址栏显示企业名称,增强可信度。
- EV 证书:金融、支付、政务类系统首选;严格核验法律实体、实际经营地址、电话等,签发周期5–7天;地址栏绿色标识+企业名,用户感知强。
二、规范生成与提交 CSR
CSR(Certificate Signing Request)必须在目标服务器上生成,确保私钥不出内网、不共享、不备份到云端。生产环境严禁使用在线工具生成 CSR。
- 用 OpenSSL 生成 RSA 2048 或 ECC secp384r1 私钥和 CSR:
openssl genrsa -out yourdomain.key 2048openssl req -new -key yourdomain.key -out yourdomain.csr -subj "/C=CN/ST=Beijing/L=Haidian/O=YourCorp/CN=yourdomain.com" - 填写 CSR 时,CN(Common Name)必须精确匹配主域名;若需通配符(如 *.api.example.com),需单独申请 Wildcard 证书,并确保 CA 支持该域名层级。
- 保存好私钥文件(.key),设置权限为
600(chmod 600 yourdomain.key),切勿上传至 Git 或共享目录。
三、完成验证并下载完整证书包
DV/OV/EV 均需完成域名控制权验证。生产环境建议统一采用 DNS 验证方式——稳定性高、不受 Web 服务状态影响、无端口开放风险。
- 登录域名 DNS 管理平台,添加 CA 提供的 TXT 记录(如
_acme-challenge.yourdomain.com);等待 TTL 生效(通常 60–300 秒)。 - 验证通过后,CA 下发的证书包必须包含三项:
✓ 域名证书(yourdomain.crt或yourdomain.pem)
✓ 中间证书链(ca-bundle.crt或类似命名,不可省略)
✓ 私钥(yourdomain.key,必须与 CSR 对应) - 切勿直接使用 CA 控制台“一键下载”的单个 .crt 文件——缺少中间链将导致部分安卓/iOS 设备或旧版浏览器握手失败。
四、部署到服务器并启用 HTTPS
部署不是简单复制粘贴,而是配置加固+流量切换+监控闭环。
-
Nginx 示例(关键字段不可省略):
server {<br> listen 443 ssl http2;<br> server_name yourdomain.com;<br> ssl_certificate /etc/ssl/certs/yourdomain.crt;<br> ssl_certificate_key /etc/ssl/private/yourdomain.key;<br> ssl_trusted_certificate /etc/ssl/certs/ca-bundle.crt; # 显式指定中间链<br> ssl_protocols TLSv1.2 TLSv1.3;<br> ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:...;<br> ssl_prefer_server_ciphers off;<br> } - 务必配置 HTTP → HTTPS 强制跳转:
server { listen 80; return 301 https://$host$request_uri; } - 重启前先测试配置:
nginx -t;生效后用 SSL Labs 扫描评级,目标至少 A+。 - 加入自动续期机制(如 Certbot 或 acme.sh),设置 cron 每月执行一次 renew,并 reload 服务;避免证书过期导致业务中断。
五、额外注意事项
生产环境还要考虑兼容性、可观测性和应急响应。
- 若服务面向移动端,检查证书链是否被 Android 7.0+ 和 iOS 10+ 完全信任;部分国产 CA 的中间根可能未预置,需补全链或换签发机构。
- 在负载均衡(如阿里云 SLB、AWS ALB)上卸载 SSL 时,证书需上传至 LB 控制台,后端服务器仍走 HTTP,但需在 header 中识别
X-Forwarded-Proto: https来正确生成跳转链接。 - 记录证书到期时间,接入 Prometheus + Alertmanager,提前 15 天告警;同时保留上一版证书备份,用于紧急回滚。


















