您需要配置HTTPS证书,才能使用HTTPS方式访问资源,实现HTTPS安全加速。本文档介绍了阿里云CDN支持的证书格式和不同证书格式的转换方式。

Root CA机构颁发的证书

Root CA机构提供的证书是唯一的,一般包括Apache、IIS、Nginx和Tomcat。阿里云CDN使用的证书是Nginx,.crt为证书,.key为私钥。

证书规则为:
  • 请将开头-----BEGIN CERTIFICATE-----和结尾 -----END CERTIFICATE-----一并上传。
  • 每行64字符,最后一行不超过64字符。
Linux环境下,PEM格式的证书示例如下图。
PEM

中级机构颁发的证书

中级机构颁发的证书文件包含多份证书,您需要将服务器证书与中间证书拼接后,一起上传。

说明 拼接规则为:服务器证书放第一份,中间证书放第二份。一般情况下,机构在颁发证书的时候会有对应说明, 请注意规则说明。

中级机构颁发的证书链:

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

证书链规则:

  • 证书之间不能有空行。
  • 每一份证书遵守第一点关于证书的格式说明。

RSA私钥格式要求

RSA私钥规则:

  • 本地生成私钥:openssl genrsa -out privateKey.pem 2048。其中,privateKey.pem为您的私钥文件。
  • -----BEGIN RSA PRIVATE KEY-----开头,以-----END RSA PRIVATE KEY----- 结尾,请将这些内容一并上传。
  • 每行64字符,最后一行长度可以不足64字符。

RSA
如果您并未按照上述方案生成私钥,得到如-----BEGIN PRIVATE KEY----------END PRIVATE KEY-----这种样式的私钥时,您可以按照如下方式转换:
openssl rsa -in old_server_key.pem -out new_server_key.pem

然后将new_server_key.pem的内容与证书一起上传。

证书格式转换方式

HTTPS配置只支持PEM格式的证书,其他格式的证书需要转换成PEM格式,建议通过openssl工具进行转换。下面是几种比较流行的证书格式转换为PEM格式的方法。

  • DER转换为PEM
    DER格式一般出现在Java平台中。
    • 证书转化:
      openssl x509 -inform der -in certificate.cer -out certificate.pem
    • 私钥转化:
      openssl rsa -inform DER -outform pem -in privatekey.der -out privatekey.pem
  • P7B转换为PEM
    P7B格式一般出现在Windows Server和Tomcat中。
    • 证书转化:
      openssl pkcs7 -print_certs -in incertificat.p7b -out outcertificate.cer

      获取outcertificat.cer里面-----BEGIN CERTIFICATE----------END CERTIFICATE-----的内容作为证书上传。

    • 私钥转化:P7B证书无私钥,您只需在CDN控制台填写证书部分,私钥无需填写。
  • PFX转换为PEM
    PFX格式一般出现在Windows Server中。
    • 证书转化:
      openssl pkcs12 -in certname.pfx -nokeys -out cert.pem
    • 私钥转化:
      openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes