在 IIS 中为证书创建公钥私钥对

在 IIS 中为证书创建公钥私钥对

我需要为证书请求创建公钥/私钥对。我想使用 IIS。证书签名后,我将把它分发到多个服务器,因此也需要私钥部分。

关于如何创建密钥对的教程有很多,我也成功创建了,但是我似乎只能找到公钥部分(我确实意识到这是我应该发送给权威机构的唯一内容)。除非我确定我也拥有私钥,否则我不想将公钥发送给权威机构。

我将非常感激您的帮助;请记住,在服务器管理方面我是个菜鸟。谢谢!

编辑:根据下面提供的信息,IIS 可能不是最适合我的工具。有人能推荐一款可靠的 Windows 工具吗?

答案1

在 IIS 的现代版本上,启动 IIS 管理器控制台,单击左侧窗格中的服务器,然后双击右侧窗格中的“服务器证书”。现在您会注意到,在最右侧窗格中,您可以选择“创建证书请求”和“完成证书请求”。

因此,一旦您创建了 CSR,请将其带到证书颁发机构,他们将授予或拒绝它。

这里的关键(没有双关语的意思)是私钥是在您创建 CSR 时生成的,因此目前唯一拥有与该 CSR 对应的私钥的主机是您在其上创建 CSR 的 Web 服务器。因此,您只能在同一台服务器上完成证书请求。假设证书颁发机构批准您的请求,您从 CA 收到的签名响应将在您完成证书请求时与您的私钥绑定。

完成证书请求后,打开 MMC 控制台并添加证书管理单元,然后找到您刚刚收到的证书。您可以看到您有此证书的相应私钥,因为其图标上有一把小钥匙。右键单击并导出它,并确保将私钥与其一起导出。向导应该会要求您使用密码保护文件。

现在,您可以将导出的证书及其私钥带到您喜欢的任何其他服务器。请小心处理此文件,因为它包含此证书的公钥和私钥,因此您显然希望保证其安全。

答案2

如果您的 SSL 证书没有关联的私钥,则可以使用命令行修复实用程序将私钥与导入的证书重新关联:

在相应的商店中找到证书并双击它。转到详细信息选项卡并复制序列号。打开管理命令提示符并运行以下命令:

certutil -repairstore 我的“序列号”

准确插入所列的序列号。实用程序运行后,刷新 MMC 管理单元,您现在应该会在左上角看到钥匙符号,表示私钥与新证书相关联。

相关内容