使用openssl将pfx转换为pem
我从X509证书生成器生成client_ssl.pfx文件。
如何使用openssl从client_ssl.pfx获取root.pem和client_ssl.pem ?
您可以使用OpenSSL命令行工具。 以下命令应该做的伎俩
openssl pkcs12 -in client_ssl.pfx -out client_ssl.pem -clcerts openssl pkcs12 -in client_ssl.pfx -out root.pem -cacerts
如果你想要你的文件被密码保护等,那么还有其他的select。
你可以在这里阅读整个文档。
在Linux上做这件事的另一个观点是…这里是如何做到这一点,使得生成的单个文件包含解密后的私钥,这样HAProxy就可以在不提示你input密码的情况下使用它。
openssl pkcs12 -in file.pfx -out file.pem -nodes
然后您可以configurationHAProxy使用file.pem文件。
这是以前版本的编辑,我有这些多个步骤,直到我意识到-nodes选项只是绕过私钥encryption。 但是我要把它留在这里,因为它可能只是帮助教学。
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
- 第一步提示您input密码以打开PFX。
- 第二步提示你,另外还为密钥组成一个密码。
- 第三步提示你input你刚刚制作的密码来存储解密。
- 第四把这一切放在一起。
然后,您可以configurationHAProxy以使用file.combo.pem文件。
之所以需要2个单独的步骤,指出使用密钥的文件和没有使用密钥的文件,是因为如果您有一个同时具有encryption和解密密钥的文件,则类似于HAProxy的文件仍会提示您在input密码时它使用它。