我目前正在我们的组织中建立新的内部 Windows PKI 基础设施,以取代旧的设置。
一切正常,但 OCSP 位置在 pkiview 控制台中显示状态“错误”。当我使用 certutil 检查证书时(certutil -URL 测试证书.cer或者certutil -urlfetch -验证测试证书.cer) 显示已验证。因此响应器似乎确实有效。
有人知道为什么错误状态会显示在 pkiview 中吗?或者在哪里可以找到有关此错误的相关日志?
有关设置的更多信息:
- 正如您在图中所看到的,它是一个两层 PKI,具有离线根 CA 和域加入颁发 CA。
- AIA 和 CDP 位置位于两个基于 Ubuntu 的 Nginx 服务器上,并使用 keepalived 实现 HA 目的。
- Nginx 服务器上的脚本每 15 分钟从颁发 CA 获取新的 CRL。
- 同样的两台 Ubuntu 服务器有第二个 Nginx 服务器块,它运行负载平衡器以将 ocsp 请求定向到两个 ocsp 响应器服务器。这样,证书可以只包含一个 ocsp url,并且客户端不必等待一个 ocsp 响应器关闭时超时。
当我在谷歌上搜索这个问题时,我发现这可能是由于 CA-Exchange 证书过期. 但更新并没有帮助。
更新
我使用 Wireshark 对此进行了测试,启动 pkiview 时,实际上没有发出 ocsp 请求。运行certutil -URL 测试证书.cerWireshark 清楚地显示了 ocsp 请求和响应。
答案1
经过进一步搜索后我明白了。
对于 ocsp 响应服务器,我使用与旧的 pki 设置相同的数组,因为您可以简单地将多个配置添加到数组。
当这些服务器建立起来后,我本指南为 ocsp 位置获取更好的 URL。(http://ocsp.domain.com代替http://ocsp.domain.com/ocsp) 这涉及创建一个新的 IIS 站点并编辑 IIS 配置文件。
过去,这种方法对客户端来说效果很好,现在仍然如此。但似乎会导致 pkiview 出现错误。过去,ocsp 位置未添加到端点证书中。它仅用于一个在其配置文件中包含 URL 的应用程序。因此它没有显示在 pkiview 中。
当我们恢复标准 IIS 配置并更新 CAExchange 证书时,错误就消失了。