Windows:当我知道已发送 OK 响应时,如何诊断证书吊销检查失败?

Windows:当我知道已发送 OK 响应时,如何诊断证书吊销检查失败?

TL;DR; 如何发现 Windows 上 OCSP 响应出了什么问题?

我正在尝试在本地 Exchange Server 2019 中安装新证书。但 Exchange 始终报告新证书未通过吊销检查,因此不会使用它。新证书具有从新证书到中间 CA 再到我的根 CA 的信任链。当我在 certmgr.msc 中打开新证书时,我看到该链和所有证书在 certmgr 中均报告为正常。我已将我的根 CA 安装到“受信任的根证书颁发机构”存储中。我已将中间 CA 安装到“中级证书颁发机构”存储中。

新证书权限信息访问URL 指定我自己的 OCSP 响应器。我知道这不是连接或代理问题,因为我实时查看 OCSP 日志,并且我知道连接已建立,并且我的 OCSP 响应器发送证书“OK”。我已经在 Linux 主机上使用 openssl-ocsp 进行了测试,当我使用此 openssl 命令时,验证成功:

   openssl ocsp 
      -issuer "$ca_sub_cert_file" 
      -cert "$exchangeCert" 
      -resp_text 
      -CApath "$CA_ROOTS_HASHES_DIR" 
      -url "http://$hostNameFull:$ocsp_port/"

请注意,上面的 openssl 命令明确引用了發行人,以及路径分析,并启用对中间 CA 的信任。在 Windows 上,我预计安装 root-ca 和中间 CA 会同样启用对 OCSP 响应的信任。但我不知道如何测试这一点。

这应该不是必需的,但我还“安装”了 ocsp-responder 的证书。我允许向导自动选择存储,但我找不到它放在哪里。当我在 certmgr.msc 中搜索它时,它没有出现。我没有手动安装它,因为我不知道应该使用哪个存储。

我怀疑我的 openssl OCSP 响应器的响应对于 Exchange Server 2019 是错误的。我的理论是:

  • 无法从新证书到我的根 CA 建立信任链
  • 链已建立,但 ocsp-responder、intermediate-ca 或 root-ca 的其中一个证书不受信任。即使安装了 middle-ca 和 root-ca。
  • openSSL 响应与 Windows 和/或 Exchange Server 2019 不兼容

我该如何测试上述理论?我搜索了 Windows 事件日志,但其中没有提及 OCSP 或撤销。

答案1

certutil.exe一个相对较新的选项,-downloadocsp您可以使用它来验证 OCSP 响应。

  1. 在命令提示符中,创建两个文件夹,分别名为certsresults
  2. 将您的 Exchange 服务器证书放在该certs文件夹中。如果您也使用 OCSP 检查 CA 证书,请将 CA 证书的副本放在该文件夹中。
  3. 运行certutil -downloadocsp certs results downloadonce。这将为每个响应创建一个.ocsp文件。results
  4. 最后,运行certutil results\????.ocsp以纯文本形式查看每个响应。

以上内容来自 Mark Cooper 的精彩文章网站

相关内容