不同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
  • 将CER格式证书转化为PEM格式
    您可以使用OpenSSL工具,将CER格式证书文件转化为PEM格式证书。例如,将您的CER格式证书文件cert_name.cer拷贝至OpenSSL安装目录,使用OpenSSL工具执行以下命令将证书转换成cert_name.pem证书文件。
    openssl x509  -in <cert_name>.cer -out <cert_name>.pem  -outform PEM
  • 将PEM格式证书转化为CER格式
    您可以使用OpenSSL工具,将PEM格式证书文件转化为CER格式证书文件。例如,将您的PEM格式证书文件cert_name.pem拷贝至OpenSSL安装目录,使用OpenSSL工具执行以下命令将证书转换成cert_name.cer证书文件。
    openssl x509 -in <cert_name>.pem -out <cert_name>.cer  -outform DER