不同Web服务器支持的证书格式不同。您需要将已签发的证书转换为适用当前Web服务器的格式,才能正常安装SSL证书。本文介绍如何转换证书格式。

您可参考以下方法实现证书格式之间的转换:
  • 将JKS格式证书转换成PFX格式
    您可以使用JDK中自带的Keytool工具,将JKS格式证书文件转换成PFX格式。例如,您可以执行以下命令将cert_name.jks证书文件转换成cert_name.pfx证书文件:
    keytool -importkeystore -srckeystore D:\<cert_name>.jks -destkeystore D:\<cert_name>.pfx
            -srcstoretype JKS -deststoretype PKCS12
    说明
    • 本文证书名称以cert_name为示例,例如:证书文件名称为cert_name.pem,证书密钥文件名称为cert_name.key。您在实际使用过程中需要将cert_name替换成您的证书名称。
    • Keytool工具是JDK中自带的密钥管理工具,可以制作Keystore(jks)格式的证书文件,您可以从 官方地址 下载JDK工具包来获取Keytool工具。该工具一般存放在JDK\jre\bin\security\目录下。
  • 将PFX格式证书转换为JKS格式
    您可以使用JDK中自带的Keytool工具,将PFX格式证书文件转换成JKS格式。例如,您可以执行以下命令将cert_name.pfx证书文件转换成cert_name.jks证书文件:
    keytool -importkeystore -srckeystore D:\<cert_name>.pfx -destkeystore D:\<cert_name>.jks
            -srcstoretype PKCS12 -deststoretype JKS
  • 将PEM/KEY/CRT格式证书转换为PFX格式
    您可以使用 OpenSSL工具,将KEY格式密钥文件、PEM或CRT格式公钥文件转换成PFX格式证书文件。例如,将您的KEY格式密钥文件cert_name.key和PEM格式公钥文件cert_name.pem拷贝至OpenSSL工具安装目录,使用OpenSSL工具执行以下命令将证书转换成cert_name.jks证书文件:
    openssl pkcs12 -export -out <cert_name>.pfx -inkey <cert_name>.key -in <cert_name>.pem
  • 将PFX转换为PEM/KEY/CRT
    您可以使用 OpenSSL工具,将PFX格式证书文件转化为KEY格式密钥文件、PEM或CRT格式公钥文件。例如,将您的PFX格式证书文件cert_name.pfx拷贝至OpenSSL安装目录,使用OpenSSL工具执行以下命令将证书转换成cert_name.pem证书文件和KEY格式密钥文件cert_name.key
    1. 执行openssl pkcs12 -in <cert_name>.pfx -nokeys -out <cert_name>.pem
    2. 执行openssl pkcs12 -in <cert_name>.pfx -nocerts -out <cert_name>.key -nodes