证书格式说明

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

ROOT CA机构颁发的证书

Root CA机构提供的证书是唯一的,一般包括Apache、IIS、Nginx和Tomcat。阿里云全站加速使用的证书是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

      获取outcertificate.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