我熟悉在 IIS 中安装 SSL 证书的过程,但最近从客户端收到了由 *.p7b/s 和 *.crt 文件组成的证书,而没有在我的服务器上生成原始 CSR,或者没有从生成证书原始 CSR 的服务器导出的 PFX 文件。
据我了解,私钥是在请求 CSR 时生成并存储在请求服务器上的本地。然后,当您完成请求(在同一台机器上)时,安装.cer/从 CA 获得的 .crt/*.p7b 文件。
是否可以将从 CA 收到的生成证书安装在另一台 IIS 服务器上,而无需原始请求中使用的私钥。我发布此信息的唯一原因是我 99% 确定这是不可能的,但我想确认一下,因为我找不到很多解决方案。
我见过一些解决方案,可以使用 openssl 自己生成 pfx 文件,但这需要 *.key 文件,而我同样没有这个文件。
感谢帮助。
答案1
您说得对,私钥是在创建 CSR 时生成的。很多人似乎很难理解这个概念,但看起来您对此理解得相当透彻。
如果您确实拥有私钥以及相应的公共证书,那么您可以将其安装到其他服务器/设备/等上。它不需要安装在执行 CSR 的机器上。有些系统需要将密钥和公共证书都放在 PFX 或类似文件中,而其他系统则需要您将它们拆分为 .cer 文件和 .key 文件。这就是 OpenSSL 发挥作用的地方。
这里的简短回答是:是的,你确实需要私钥才能做任何事情。