我正在尝试使用 SSMS 从不同的登陆服务器连接 3 个 SQL 服务器。问题是我能够连接 1 个服务器但无法连接其他 2 个。我得到的错误如下:
与服务器成功建立连接,但在登录过程中出现错误。(提供者:SSL 提供者,错误:0 - 现有连接被远程主机强行关闭。)
我无法弄清楚其他 2 台服务器出了什么问题,需要您的帮助。
登陆服务器详情:
- Windows server 2008 R2 Ent 版
- SSMS 2012 SP1
SQL 服务器详细信息:
- SQL Server 2012 -- 能够连接
- SQL Server 2012 -- 无法连接
- SQL Server 2005 -- 无法连接
我能够从我的登陆服务器 ping 和 telnet 所有 3 台服务器。此外,尝试对 2 个我无法连接的服务器进行 SQL 身份验证,但它不起作用。禁用 TCP 烟囱,不起作用。相同的 3 个连接在我的其他登陆服务器上工作正常。所以不确定这个有什么问题。请帮我解决这个问题。
您需要检查您的 SSL 和 TLS 设置。
查看此知识库文章 3135244。客户端和服务器之间的设置应该有点一致(即如果服务器只允许 1.2 而客户端只支持 1.0 我想你可能会遇到问题)。还阅读该页面上的已知问题
更新到支持 TLS 1.2 的构建可能会解决您的问题。
这里接受的答案并没有解决我的问题。
我遇到了同样的问题,并且能够通过确保客户端(Web 服务器)和数据库服务器上的密码套件和密钥交换相同来解决它。
您可以在 windows 事件查看器系统日志中找到更详细的消息:
我使用IISCrypto来启用所需的密码:
我有同样的问题,发现它与 sql server 上的证书不正确有关。
检查客户端和服务器上的 TLS 版本。
最近,我们在 SQL Server 上禁用了其他协议并仅启用了 TLS 1.2。当我们尝试从我们的应用程序服务器连接到 SQL Server 时,我们收到了相同的错误消息。
然后,我们禁用了所有其他协议,并在我们的应用服务器上仅启用了 TLS 1.2,从而解决了我们的问题。