如何从.cer和.key获取.pfx文件?

时间:2018-01-26 15:44:24

标签: windows security ssl ssl-certificate

在此之前提问。我搜索了很多关于我的问题。问题仍然存在。以下是帖子的参考资料,我已经阅读过了。

How to create .pfx file from certificate and private key?

Convert a CERT/PEM certificate to a PFX certificate

How to get .pem file from .key and .crt files?

How to generate a .pfx file from a .cer file?

概述

我正在努力:

  

Windows 10 64位

     

IIS(版本10.0.16299.15)

     

我安装了Win32 OpenSSL v1.1.0g

这些是我提供的文件:

  • server.cer

  • server.key

我尝试了什么?

我也尝试过各种各样的搜索帖子但是我在这方面缺乏经验确实阻碍了我的努力。

以下命令我在终端尝试创建server.keyserver.cer文件。

set RANDFILE=c:\certificate\.md

set OPENSSL_CONF=c:\OpenSSL-Win32\bin\openssl.cfg

c:\OpenSSL-Win32\bin\openssl.exe genrsa -out server.key 2048`

c:\OpenSSL-Win32\bin\openssl.exe req -new -key server.key -out server.cer -config C:\OpenSSL-Win32\bin\openssl.cfg

c:\OpenSSL-Win32\bin\openssl.exe pkcs12 -export -in server.cer -inkey server.key -out server.pfx

输出 enter image description here

错误:无法加载证书

我想要什么?

如何从证书和私钥创建.pfx文件?让我知道我的代码中我做错了什么。

2 个答案:

答案 0 :(得分:2)

req命令默认创建证书请求,而不是证书。如果添加-x509参数,它将使用提供的密钥对请求进行自签名,并输出证书。然后,您应该能够成功创建.pfx。

答案 1 :(得分:2)

虽然问题已经回答,但我想补充一个更简单的解决方案。

无需使用任何第三方工具(包括OpenSSL)。您可以使用内置的certutil.exe工具。将两个文件放在同一个文件夹中,并为文件指定相同的名称(例如server.cerserver.key)并运行以下命令:

certutil -mergepfx path\server.cer

Certutil希望在.key文件扩展名的同一文件夹中找到密钥文件。

相关问题