似乎在 IIS 6 上为站点安装新的 SSL 证书的常用方法是创建一个临时站点,使用真实站点的参数生成 CSR,然后在给出证书时履行该 CSR。
这一切都很好,但我愚蠢地过早删除了临时网站——我在生成 CSR 之后、收到真实证书之前就删除了它。我仍然保留着使用的 CSR 和证书。有没有办法让 IIS 允许我安装它?我可以手动将证书添加到注册表吗?我真的不想再经历一次重新颁发的过程。
提前致谢。
答案1
私钥可能仍然存在,但您必须使用 certutil 来修复关联。我自己也不得不这样做几次。下面来自这里:
安装缺少待处理证书请求的 Web 服务器证书 1. 单击“开始”,指向“运行”,键入cmd
,然后单击“确定”。
导航到存储 Certutil.exe 的目录;默认情况下,该目录为 %windir%\system32。
在命令提示符下键入以下命令:
certutil -addstore my certnew.cer
其中 certnew.cer 是您从证书颁发机构 (CA) 收到的证书的名称。您应该会看到以下消息:CertUtil: -addstore command completed successfully
。导航到您存储从 CA 收到的证书的目录。右键单击该证书,然后指向“属性”。
单击“详细信息”选项卡并在“显示”下拉列表中选择。
在“字段”列表中,选择“指纹”以在视图窗格中显示其值。
在视图窗格中选择指纹值,然后单击 CTRL+C。
返回命令提示符窗口并键入以下命令:
certutil -repairstore my "thumbprint"
其中,thumbprint 是 Thumbprint 字段的值。请确保将双引号作为命令的一部分键入。如果命令成功,则会显示以下消息:Encryption test passed CertUtil: = repairstore command completed successfully.
答案2
您需要重新颁发 SSL 证书,否则您将看到私钥不匹配错误。您可以重新生成 CSR 并申请重新颁发并安装证书