抱歉,如果这是重复的问题,但我没有看到任何与我的问题类似的问题。这也是我第一次更新证书。
先来介绍一下背景故事。我们有一个 SharePoint 网站,有一个 ISA 防火墙负责重定向 Web 流量。我们的 SharePoint 服务器不是面向公众的,因此我们安装了一个 Web 侦听器证书,用于对传入流量使用 SSL,因此当人们登录时,他们的密码不是明文的。
根据卖家网站上的说明,您必须从 IIS 框(sharepoint)生成证书请求,但在 ISA(防火墙)上安装证书,OK,到目前为止一切顺利。
我可以导出证书,并将其导入到计算机个人证书存储中。但是,当我转到 ISA 上的侦听器规则时,新证书未显示为有效,它显示私钥无效或丢失。
这是我在某个地方犯的一个错误。根据 KB 292569
“如果您在“导出私钥”窗口中没有单击“是”的选项,则表示私钥已导出到另一台计算机或该密钥从未存在于此计算机上。您无法在 ISA Server 上使用此证书。您必须为此站点的 ISA Server 申请新证书。”
当我右键单击导出卖家的证书时,没有包含私钥的选项。
那么根据 MS 文章,我是否需要重新开始新的 CSR?
我错过了什么导致我的证书没有私钥?
答案1
证书在何处生成并不重要。
您可以从工作站、Sharepoint 服务器或完全不相关的工作站/服务器生成证书。
让这一切发挥作用的关键(哈!我喜欢双关语)是一致性。你从哪里开始,你就需要从哪里结束。
例如:
- 从 Sharepoint 服务器创建 CSR
- 将 CSR 提交给 CA 进行签名。
- CA 将签署证书并将其发回。(我认为这是你出错的地方)签署的证书需要通过待处理的请求导入回生成 CSR 的原始机器。(在此示例中为 Sharepoint 服务器)
- 您现在拥有一个匹配的密钥/证书,可以将其导出并安装在 ISA 服务器上。(确保在导出证书时导出私钥)
答案2
好的,我终于搞清楚发生了什么。我的老板启动了它,但无法让它工作,结果发现他搞混了。k1DBLITZ 是对的,你从哪里开始,你就在哪里结束,真希望我的老板知道这一点 :) 正如我上面所说,我们在一个框中生成了一个证书请求,带有 ISA 防火墙安全重定向。这是因为这是公众将看到的服务器。然后我们有另一个服务器,即网络主机。
好吧,我的老板在 Web 服务器上生成了一个证书请求,但随后试图通过在 ISA 服务器(而不是 Web 服务器上)上安装证书响应来完成证书。一旦我弄清楚他做了什么,我就在生成请求的服务器上安装了响应并完成了证书。之后,我可以将证书和私钥导出到 ISA 防火墙框上。
无论如何,一旦我弄清楚他做了什么,修复起来就很简单了。100% 是人为错误。谢谢大家!