奋斗
努力

京东云服务器如何配置SSL证书?

云计算

在京东云服务器上配置SSL证书(实现HTTPS加密)主要分为以下几个步骤,适用于常见的Web服务器(如Nginx、Apache、Tomcat等)。以下是详细操作指南:


一、获取SSL证书

  1. 购买或申请免费证书

    • 京东云提供付费SSL证书(可在控制台购买),也支持上传第三方证书(如Let’s Encrypt、DigiCert等)。
    • 免费证书推荐:
      • Let’s Encrypt(通过certbot工具自动获取)。
      • 京东云部分套餐可能提供免费DV证书。
  2. 证书文件准备

    • 通常包括以下文件(根据颁发机构提供):
      • 证书文件.crt.pem
      • 私钥文件.key
      • 证书链文件CA bundle,可选,部分机构需要)

二、上传证书到京东云服务器

  1. 通过控制台上传

    • 登录京东云控制台 → 云安全 → SSL证书管理 → 上传证书(填写证书内容和私钥)。
    • 绑定到云服务器实例(需关联负载均衡或直接部署到服务器)。
  2. 手动上传到服务器

    • 使用SFTP或SSH将证书文件上传到服务器目录(如/etc/ssl/):
      scp /path/to/your-cert.crt root@服务器IP:/etc/ssl/
      scp /path/to/your-private.key root@服务器IP:/etc/ssl/

三、配置Web服务器

1. Nginx 配置示例

server {
    listen 443 ssl;
    server_name yourdomain.com;

    ssl_certificate /etc/ssl/your-cert.crt;  # 证书路径
    ssl_certificate_key /etc/ssl/your-private.key;  # 私钥路径

    # 可选:增强安全性
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384';
    ssl_prefer_server_ciphers on;

    # 其他配置...
    location / {
        root /var/www/html;
        index index.html;
    }
}

# 强制HTTP跳转到HTTPS
server {
    listen 80;
    server_name yourdomain.com;
    return 301 https://$host$request_uri;
}
  • 重启Nginx
    sudo nginx -t   # 测试配置
    sudo systemctl restart nginx

2. Apache 配置示例

<VirtualHost *:443>
    ServerName yourdomain.com
    SSLEngine on
    SSLCertificateFile /etc/ssl/your-cert.crt
    SSLCertificateKeyFile /etc/ssl/your-private.key
    SSLCertificateChainFile /etc/ssl/ca-bundle.crt  # 如有证书链需配置

    # 其他配置...
</VirtualHost>

# 强制HTTPS
<VirtualHost *:80>
    Redirect permanent / https://yourdomain.com/
</VirtualHost>
  • 重启Apache
    sudo apachectl configtest
    sudo systemctl restart apache2

3. Tomcat 配置(Java项目)

修改conf/server.xml,添加以下内容:

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true">
    <SSLHostConfig>
        <Certificate certificateFile="/etc/ssl/your-cert.crt"
                     certificateKeyFile="/etc/ssl/your-private.key"
                     type="RSA" />
    </SSLHostConfig>
</Connector>
  • 重启Tomcat:./bin/shutdown.sh && ./bin/startup.sh

四、验证SSL配置

  1. 浏览器访问
    • 打开https://yourdomain.com,确认锁图标正常无警告。
  2. 在线工具检测
    • 使用 SSL Labs 测试证书配置安全性。

五、自动续签(如Let’s Encrypt)

若使用Let’s Encrypt证书,可通过certbot设置自动续签:

sudo certbot renew --dry-run  # 测试续签
sudo crontab -e              # 添加定时任务(每月续签)
0 0 1 * * /usr/bin/certbot renew --quiet

常见问题

  1. 证书不信任
    • 确保证书链完整(尤其是中间证书)。
  2. Nginx报错SSL_CTX_use_PrivateKey
    • 检查私钥是否与证书匹配:openssl x509 -noout -modulus -in cert.crt | openssl md5openssl rsa -noout -modulus -in private.key | openssl md5,结果需一致。
  3. 端口未开放
    • 确保安全组/防火墙放行443端口(京东云控制台→安全组→添加入站规则)。

通过以上步骤,即可完成京东云服务器的SSL证书配置。如有特殊环境(如CDN、负载均衡),需在对应服务中单独配置证书。

未经允许不得转载:云服务器 » 京东云服务器如何配置SSL证书?