如何生成<代码>。pem使用OpenSSL从PFX文件中获取CA证书和客户端证书。
尽管其他答案都是正确的,而且解释得很透彻,但我发现理解它们有些困难。以下是我使用的方法(摘自此处):
openssl pkcs12 -in filename.pfx -out cert.pem -nodes
从PFX中提取私钥到PEM文件:
openssl pkcs12 -in filename.pfx -nocerts -out key.pem
导出证书(仅包括公钥):
openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem
从提取的私钥中删除密码(释义)(可选):
openssl rsa -in key.pem -out server.key
您可以使用OpenSSL命令行工具。以下命令应该可以解决问题
openssl pkcs12 -in client_ssl.pfx -out client_ssl.pem -clcerts
openssl pkcs12 -in client_ssl.pfx -out root.pem -cacerts
如果你想你的文件是密码保护等,那么有额外的选择。
您可以在此处阅读整个文档。
在Linux上执行此操作的另一种观点...这里是如何执行此操作,以便生成的单个文件包含解密的私钥,以便HAProxy之类的东西可以使用它而不会提示您输入密码。
openssl pkcs12 -in file.pfx -out file.pem -nodes
然后可以配置HAProxy使用file.pem文件。
这是以前版本的编辑,我有这么多步骤,直到我意识到-nodes选项只是简单地绕过私钥加密。但我把它留在这里,因为它可能只是帮助教学。
openssl pkcs12 -in file.pfx -out file.nokey.pem -nokeys
openssl pkcs12 -in file.pfx -out file.withkey.pem
openssl rsa -in file.withkey.pem -out file.key
cat file.nokey.pem file.key > file.combo.pem
然后可以配置HAProxy使用file.combo。pem文件。
之所以需要两个单独的步骤,即一个文件有密钥,另一个文件没有密钥,是因为如果你有一个文件既有加密的密钥又有解密的密钥,类似HAProxy的东西在使用它时仍然会提示你输入密码。
我一直在尝试使用openssl将.crt证书转换为.pem 无法加载证书 1760:错误:0906D06C:PEM例程:PEM_READ_BIO:没有起始行:.\CRYPTO\PEM\PEM_LIB.C:703:需要:受信任的证书 我尝试过访问https://support.ssl.com/knowledgebase/article/view/19/0/der-vs-crt-vs-cer-vs-p
我在Windows7上有OpenSSL x64,这是我从Google代码上的OpenSSL-for Windows下载的。我正试图跑: 但我有个错误。 如何使用OpenSSL从PKCS#12存储中提取PEM中的证书?
问题内容: 我有Java Web服务,并已使用Java Keytool创建的jks文件实现了X.509。 为了在客户端和服务器之间建立信任,我将服务器证书导入到客户端,并将客户端证书导入到服务器。 将服务器公钥(证书)导入客户端。 将客户端公钥(证书)导入服务器 Service和Client都是用Java编写的,并且运行良好。现在我有一个.NET客户端,我的理解是,如果我向.NET客户端(即cli
下载test.cer的链接单击下载
问题内容: 我正在尝试通过openssl将.cer文件转换为.pem,命令是: 那就是我得到的错误: 我究竟做错了什么? 问题答案: 我也有这个问题。只需将CER重命名为PEM就足够了:)
我需要支持Keytool的相同功能。exe通过使用KeyTool类编程将java密钥库转换为PFX文件。由于项目需求的限制,我无法从我的应用程序中使用命令提示符进程,因此通过编程,我也无法打开命令进程。 例如。 C:\keytool-importkeystore-srckeystore。k eystore-srcstoretype JKS-destkeystore-thekeystore。pfx-