由于防病毒,登录前握手期间发生错误吗?

时间:2019-08-03 15:37:22

标签: sql sql-server powerbi antivirus onpremises-gateway

我需要您的专业知识解决我的问题之一。我经常从我们的Power BI本地网关到SQL连接遇到间歇性问题

网关日志错误

  

错误:已成功与服务器建立连接,但是   然后在登录前握手期间发生错误。 (提供者:SSL   提供程序,错误:0-等待操作超时。)

这里的困难部分是很难重现☹️每当我尝试从网关到SQL Server的连接时,它都会成功,但在极少数情况下,它会失败。

我们找到根本原因的步骤

  • 仅在网关服务器和SQL Server TLS 1.2中进行了检查 启用,则禁用其他版本的TLS
  • 创建了一个.udl文件并尝试了连接,但出现了如下错误 [DBNETLIB] ConnectionOpen(SECCreateCredentials()。] SSL安全性 错误。

最后,我们联系了我们的内部支持团队,他们告诉他们运行网络跟踪程序。我们做到了。 一段时间后,我们很幸运在网络跟踪器中捕获了错误。 (下图)

enter image description here

支持团队说:

我们看到客户端(网关服务器)在经过14秒的TLS SSL握手后正在发送客户端问候,此延迟导致连接失败,因为需要在15秒内建立连接。 我们看到了相同的模式,其中客户端导致通信的多个实例上的延迟。 这种延迟通常是由Antivirus

引起的

我的问题:

  • 这真的是防病毒问题吗?如果是这样,那为什么不发生 所有的时间?

PS 我知道这个问题已经在SO中提出,可能会重复,但是我真正的问题是这种防病毒软件可能是造成此问题的原因吗?

1 个答案:

答案 0 :(得分:0)

经过多次尝试,该问题终于得到解决。以下是为我们工作的解决方案

•Azure AD加入,其中连接转到“ login.microsoft.com”并延迟连接。要禁用此Auto Azure WorkPlace联接,需要执行来自注册表和GPO的少量设置。

https://docs.microsoft.com/en-us/azure/active-directory/device-management-troubleshoot-hybrid-join-windows-current

它讨论如何限制服务器通过GPO加入AzureAD,该决议将解决:

  

table.columns(1).header().to$().addClass('circle red') table.columns(2).header().to$().addClass('circle blue') table.columns(3).header().to$().addClass('circle green')

注意:没有痕迹很难说这是一个问题,但是尽管如此,它仍可以提高连接性能,因此值得尝试。

•前往http://ctldl.windowsupdate.com的连接,请参考以下有关此问题的文章。

https://blogs.technet.microsoft.com/askds/2018/04/10/tls-handshake-errors-and-connection-timeouts-maybe-its-the-ctl-engine/

注意:如上所述,没有痕迹很难说这可能是一个问题,但是它会提高连接性能,因此值得尝试。

  

要禁用它:
•创建此注册表项的备份(导出并保存   副本)
  HKLM\SOFTWARE\Policies\Microsoft\Windows\WorkplaceJoin\ key: autoWorkplaceJoin = 0
•然后在键下创建以下DWORD注册表值
  HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SystemCertificates\AuthRoot

我希望这对以后的人有帮助!