如何使用 WinHTTP 禁用 Windows 2008 应用程序的 CRL 检查?

如何使用 WinHTTP 禁用 Windows 2008 应用程序的 CRL 检查?

我有一台 Windows 2008 服务器,其中有一个使用 WinHTTP 进行 SSL 会话的应用程序。该服务器与互联网隔离,但仍尝试连接到 CRL 分发点,这会导致一些超时。

由于服务器根本无法访问互联网,因此我想禁用 CRL 检查。

我在 Windows 2003 服务器上遇到了类似的问题,并通过调整以下注册表项解决了该问题:

HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Http/Parameters/SslBindiongInfo/0.0.0.0:443/DefaultSslCertCheckMode (DWORD=1)

HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Rasman/PPP/EAP/13/NoRevocationCheck (DWORD = 1)

HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Rasman/PPP/EAP/13/NoRootRevocationCheck (DWORD = 1)

这在 2008 中似乎不起作用。我也尝试在工具 >> Internet 选项 >> 高级下禁用 IE 的 CRL 检查。

还有什么我还可以尝试的吗?

答案1

我不知道,但是黑洞 crl 服务器有用吗?您可以将 127.0.0.1 crl.host.domainnaame 添加到 hosts 文件中。

另一个应用程序的示例如下:

安装 Exchange Server 2007 更新汇总后,Exchange Server 2007 托管代码服务不会启动
http://support.microsoft.com/kb/944752

答案2

我们发现,每当 IIS 工作进程进入睡眠状态时(默认情况下空闲时间为 20 分钟),当它醒来时,它会检查一大堆东西,而 CLR 就是其中一项检查。将空闲时间设置为 0 并在特定时间进行回收是解决此问题的最佳方法。

答案3

也许值得看看这个博客

http://www.page-house.com/blog/2009/04/how-to-disable-crl-checking.html

禁用 CRL 检查计算机范围控制面板 -> Internet 选项 -> 高级 -> 在安全下,取消选中检查发布者的证书吊销选项

禁用特定 .Net 应用程序的 CRL 检查请参阅此 Microsoft KB 文章:http://support.microsoft.com/kb/936707

相关内容