京东云的“SSL云盾证书”(现通常称为 京东云SSL证书服务,已整合进京东云控制台的「SSL证书」产品)本身是证书颁发机构(CA)签发的数字证书(如DV/OV证书),并非一个独立的硬件或软件防护组件。所谓“部署到Web服务器”,实际是指:将京东云申请/托管的SSL证书(含公钥证书、私钥、可能的中间证书)正确配置到您的Web服务器(如Nginx、Apache、Tomcat等)上,以启用HTTPS访问。
以下是标准、安全、可落地的部署流程(以主流服务器为例):
✅ 一、前提准备
- 已在京东云SSL证书控制台完成证书申请与签发
- 域名已验证(DNS或文件验证通过)
- 证书状态为 “已签发”(可在 京东云SSL证书控制台 查看)
- 确认您的Web服务器环境(本文覆盖 Nginx / Apache / Tomcat)
- 确保服务器防火墙/安全组已放行 443 端口
✅ 二、下载证书文件(京东云控制台操作)
- 登录 京东云控制台 → SSL证书
- 找到目标证书 → 点击 【下载】
- 选择对应服务器类型(⚠️ 注意:京东云提供 Nginx、Apache、Tomcat、IIS、Nginx(OpenResty)等格式,务必选对!)
- 下载后得到一个
.zip包,解压后包含:xxx.crt或fullchain.pem(证书文件,含站点证书 + 中间证书)xxx.key(私钥文件,极其敏感,严禁泄露!)- (部分旧版可能有
ca-bundle.crt,新版通常已合并进fullchain.pem)
- 下载后得到一个
🔐 安全提示:私钥(
.key)必须严格保密,权限建议设为600(chmod 600 your_domain.key),且仅限 root 或 Web 服务用户可读。
✅ 三、部署到常见Web服务器
▶️ 方案1:Nginx(推荐,最常用)
server {
listen 443 ssl http2;
server_name www.yourdomain.com;
# SSL证书配置(路径按实际修改!)
ssl_certificate /path/to/your_domain.crt; # 或 fullchain.pem
ssl_certificate_key /path/to/your_domain.key;
# 推荐启用的SSL优化(提升安全性 & 兼容性)
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
# 强制HTTPS跳转(可选,配合80端口重定向)
# ...
location / {
proxy_pass http://backend;
# 其他配置...
}
}
# HTTP自动跳转HTTPS(强烈建议)
server {
listen 80;
server_name www.yourdomain.com;
return 301 https://$server_name$request_uri;
}
✅ 部署后执行:
sudo nginx -t && sudo nginx -s reload
▶️ 方案2:Apache(httpd)
<VirtualHost *:443>
ServerName www.yourdomain.com
DocumentRoot "/var/www/html"
SSLEngine on
SSLCertificateFile "/path/to/your_domain.crt" # 或 fullchain.pem
SSLCertificateKeyFile "/path/to/your_domain.key"
# SSLCertificateChainFile 已不推荐(新版用 SSLCertificateFile 合并链)
# 推荐SSL配置
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:...
SSLHonorCipherOrder on
</VirtualHost>
# HTTP重定向
<VirtualHost *:80>
ServerName www.yourdomain.com
Redirect permanent / https://www.yourdomain.com/
</VirtualHost>
✅ 启用SSL模块并重启:
sudo a2enmod ssl
sudo systemctl restart apache2
▶️ 方案3:Tomcat(Java应用)
编辑 $CATALINA_HOME/conf/server.xml:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="200" scheme="https" secure="true"
keystoreFile="/path/to/your_domain.p12"
keystorePass="your_keystore_password"
keystoreType="PKCS12"
sslEnabledProtocols="TLSv1.2,TLSv1.3"
ciphers="..." />
⚠️ 注意:京东云默认提供的是 PEM 格式(crt+key),需转换为 PKCS12(.p12)供 Tomcat 使用:
openssl pkcs12 -export -in your_domain.crt -inkey your_domain.key -out domain.p12 -name tomcat -CAfile fullchain.pem -caname root
然后配置 keystorePass 为导出时设置的密码。
✅ 四、验证与调试
- 浏览器访问
https://yourdomain.com→ 查看锁图标是否绿色、无警告 - 使用在线工具检测:
- SSL Labs SSL Test(免费权威)
- MySSL 检测
- 检查证书链是否完整(避免“不信任的根证书”错误)→ 确保
ssl_certificate指向的是 fullchain.pem(非仅域名证书) - 查看Web服务器错误日志:
- Nginx:
/var/log/nginx/error.log - Apache:
/var/log/apache2/error.log
- Nginx:
❗ 常见问题排查
| 现象 | 原因 | 解决 |
|---|---|---|
ERR_SSL_VERSION_OR_CIPHER_MISMATCH |
协议或加密套件不兼容 | 更新 ssl_protocols/ssl_ciphers,禁用老旧协议(SSLv3/TLSv1.0) |
| 浏览器提示“证书不可信” | 未正确配置中间证书 | 确认 ssl_certificate 是 fullchain.pem(不是单独的 domain.crt) |
| 私钥不匹配报错 | .crt 与 .key 不配对 |
用 openssl x509 -noout -modulus -in cert.crt | md5 和 openssl rsa -noout -modulus -in key.key | md5 对比MD5值 |
| 重定向循环 | HTTP/HTTPS 配置冲突 | 检查 X-Forwarded-Proto(如在负载均衡后),或确保 return 301 https://... 规则唯一 |
✅ 五、进阶建议(生产环境)
- ✅ 启用 HSTS(强制浏览器只走 HTTPS):
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always; - ✅ 定期续期提醒:京东云支持自动续期(需开启),但建议提前7天手动检查证书有效期
- ✅ 证书监控告警:结合京东云云监控或 Prometheus + Blackbox Exporter 监控证书过期时间
- ✅ 多域名/泛域名:京东云支持通配符证书(
*.example.com),部署方式相同,注意DNS解析验证
如您告知具体服务器类型(如:CentOS 7 + Nginx 1.22)、域名、是否使用京东云负载均衡(SLB)或容器(K8s),我可为您提供定制化配置片段和一键部署脚本。
需要我帮您生成某一种环境的完整配置模板吗?😊
CCLOUD博客