我正在尝试将通配符SSL证书转换为PEM格式,以便我可以在亚马逊的Cloudfront中使用它。我唯一可用的文件格式是pfx。我尝试使用以下命令:
从PFX中提取私钥
openssl pkcs12 -in {site}.pfx -nocerts -nodes -passin pass:{password} | openssl rsa -out {site}.key
从PFX中提取公钥
openssl pkcs12 –in {site}.pfx -clcerts -nokeys -passin pass:{password} | openssl x509 -out {site}.cer
从PFX中提取链束
openssl pkcs12 -in {site}.pfx -nodes -nokeys -cacerts -passin pass:{password} | openssl x509 -out bundle.crt
前两个命令运行没有任何问题,但最后一个命令返回以下内容:
MAC verified OK
unable to load certificate
17856:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib.c:701:Expecting: TRUSTED CERTIFICATE
非常感谢任何帮助!
答案 0 :(得分:0)
使用pkcs12
中的openssl
上下文,您可以从pfx文件中指定所需的组件。如果您不想签署证书而只需要颁发者证书,请尝试:
openssl pkcs12 -in mycerts.pfx -cacerts -out myissuercerts.cer
要获取crt文件扩展名,只需将文件从.cer重命名为.crt。 http://www.networksolutions.com/support/what-is-the-difference-between-a-crt-and-a-cer-file/
希望这有帮助。