使用密钥包括中间证书将 PFX 转换为 PEM

Eit*_*tan 2 ssl openssl ssl-certificate

我有一个 PFX,我想将其转换为 CRT 和密钥或 PEM 和密钥以安装在 NGINX 端点上。当我将 pfx 导入 Windows 机器上的证书存储区时,它会创建证书、中间链和根 CA。

如果我使用该 PFX 并运行以下 openssl 命令并将其绑定到端点,我将无法获得链中的所有证书:

openssl pkcs12 -in ./GoDaddy.pfx -clcerts -nokeys -out pcc.crt -nodes -nokeys

openssl pkcs12 -in ./GoDaddy.pfx -nocerts -nodes -out pcc.rsa -nodes -nokeys
Run Code Online (Sandbox Code Playgroud)

是否有我可以运行的开关或命令将 PFX 转换为 crt / rsa 或 pem /key 以及链上到根 CA 的所有证书?

Sha*_*ell 5

既然你想要一切,你只需要减少你要求的限制数量。

所以:

openssl pkcs12 -in ./GoDaddy.pfx -out ./GoDaddy.pem

如果您阅读文档,您将看到您的要求:

-nocerts

No certificates at all will be output.
Run Code Online (Sandbox Code Playgroud)

-clcerts

Only output client certificates (not CA certificates).
Run Code Online (Sandbox Code Playgroud)

-nokeys

No private keys will be output.
Run Code Online (Sandbox Code Playgroud)

-节点

Don't encrypt the private keys at all.
Run Code Online (Sandbox Code Playgroud)