PEM格式证书转换为PKCS12格式失败,openssl命令异常求助
PEM证书转PKCS12格式故障排查与正确操作
原有命令错误点
你提交的转换命令存在3个核心错误:
- 没有加
-out参数标识输出的PKCS12文件路径,openssl无法识别你写的C:\sample keyStore.p12是输出目标 - 证书文件需要用
-in参数指定,不能直接把文件路径写在命令里没有标识 - 路径存在空格或者特殊符号时没有用引号包裹,会被openssl识别为多个独立参数
正确转换命令
如果你的私钥和证书内容都保存在server.pem文件内,需要输出到C:\sample目录下的keyStore.p12,执行以下命令即可:
openssl pkcs12 -export -out "C:\sample\keyStore.p12" -inkey server.pem -in server.pem
如果你的私钥和证书是分开的两个PEM文件,把-in后面的路径替换为你的证书文件路径,-inkey后面替换为你的私钥文件路径即可。
操作注意事项
- 执行命令后会提示设置PKCS12文件的保护密码,需要连续输入两次一致的密码,后续使用该p12文件时必须输入该密码验证
- 如果需要把根证书、中间CA证书一起打包进PKCS12文件,可在命令末尾追加
-certfile 你的CA证书路径参数 - 如果执行时提示openssl不是可执行命令,先确认你已安装openssl工具,且openssl的bin目录已加入系统环境变量PATH中
内容的提问来源于stack exchange,提问作者Rose
相关产品推荐
相关产品推荐

