如何在终端中使用OpenSSL将.pem文件转换为其他格式?

时间:2019-07-18 15:41:19

标签: ssl openssl ssl-certificate

我正在尝试在终端中使用OpenSSL。我已经使用brew install openssl安装了OpenSSL。我想将.pem文件转换为托管服务提供商可以接受的另一种格式。

我尝试了几种不同的代码表达方式,并在不同的地方使用了证书,但是似乎都没有用,并且都给我各种错误消息,包括权限被拒绝。

这是我上次尝试过的...

openssl pkcs12 -in /Users/myname/fullchain.pem -inkey /Users/myname/privkey.pem -out /Users/myname/fullchain.pfx -cacerts

这是我的输出

4552226412:error:0DFFF0A8:asn1 encoding routines:CRYPTO_internal:wrong tag:/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-22.250.1/libressl-2.6/crypto/asn1/tasn_dec.c:1125:
4552226412:error:0DFFF03A:asn1 encoding routines:CRYPTO_internal:nested asn1 error:/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-22.250.1/libressl-2.6/crypto/asn1/tasn_dec.c:306:Type=PKCS12

这意味着什么,我应该使用什么代码?

编辑:我正在获取输出文件,但是它们当然是空的。

1 个答案:

答案 0 :(得分:1)

该错误消息通常是在您传递给命令的证书格式与预期的格式不符时出现的。以下命令应该为您解决。

openssl pkcs12 -export -out  /Users/myname/fullchain.pfx -inkey /Users/myname/privkey.pem -in /Users/myname/fullchain.pem

如果成功,它会提示您输入导出密码以加密.pfx文件内容。