如何在没有私钥的情况下从 .cer 文件创建 .pfx 证书?

3
我想在Microsoft Azure网站上导入SSL证书。
我使用Windows命令“certreq”在我的笔记本电脑上生成了.csr请求文件(而不是在服务器上)。
我使用此.csr文件检索了CER证书。
但现在我被阻止了,Azure网站页面需要一个.pfx文件,并拒绝.cer文件。
我尝试使用www.sslshopper.com将我的.cer证书转换为.pfx文件,但它需要私钥...
所以这里是我的问题: *我能否在没有私钥的情况下将.cer转换为.pfx? *如何获取我的笔记本电脑上certreq命令使用的私钥?
谢谢!
2个回答

1
据我所知,certreq 生成证书请求时会将您的私钥存储在证书存储中。您需要在生成证书请求的同一台计算机上完成证书请求。有一个问题关于在使用 certreq 生成证书请求后如何找到私钥。
根据您的描述,您可以按照这个教程使用 certreq 将已签名的证书导入到 Windows 本地计算机证书存储中,然后单击“开始 > 运行”,输入 certmgr.msc 来管理计算机证书,右键单击证书根节点并选择“查找证书”来查找您的证书,如下所示:

点击导出您的证书,选择“导出私钥”选项,然后将您的证书导出为.pfx文件。此外,您可以利用 DigiCertUtil 导出您的证书。

另外,如果您想要比 certreq 更灵活地掌控您的私钥,您可以使用 OpenSSL 命令行工具来生成您的私钥和证书签名请求,而不是使用 certreq。此外,您也可以使用这个 GUI 工具 startcomtool 来生成您的 CSR 并导出证书。


最后,我重新开始了使用OpenSSL的过程,因为我在我的笔记本电脑上找不到导入的证书。 - undefined

0

您需要将私钥与已发行的证书关联起来。根据在 certreq 中使用的上下文(当前用户或本地计算机上下文),运行适当的命令:

certreq -user -accept path\certfile.cer

或者

certreq -accept path\certfile.cer

好的,但是在执行这个命令之后,我该如何将 .cer 文件转换为 .pfx 文件呢?私钥是否包含在文件本身中? - undefined
当您将密钥与证书关联时,从证书存储中导出证书为PFX格式。 - undefined
抱歉,我不确定我需要做什么。在Azure网站上,我没有命令提示符,我只能上传PFX文件。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接