正确的命名管道防火墙异常(SQL Server)

问题描述 投票:0回答:1

我正在尝试调试aspx.net和c#代码。应该打开到远程SQL Server默认实例的sql连接。如果sql server主机上的Windows防火墙关闭,则连接正常。如果Windows防火墙启动,则会出现错误:命名管道提供程序错误40无法打开与Sql Server实例的连接

开发人员机器是带有Visual Studio的Windows 10。带有ms sql服务器实例的计算机是带有windows 2012和sql server 2012的虚拟机。在那台机器上,我在Windows安全事件中收到一个错误,声称用户名或密码不正确。该错误有点奇怪,因为用户名和密码必须正确(否则,如果防火墙关闭,它将不起作用)

我已经检查了sql server配置管理器的TCP / IP并启用了命名管道。在防火墙中,我已经设置了一个例外,该例外允许TCP连接到端口1433。在sql server配置管理器-SQL Server网络配置-TCP / IP中,列出的端口为1433。因此,在防火墙配置中找不到我的错误。我想念什么?

sql-server named-pipes windows-firewall
1个回答
0
投票

找到解决方案:必须扩展允许端口1433的防火墙规则。即使关闭专用防火墙也可以进行访问,但这并不意味着仅允许在专用配置文件中进行访问的防火墙规则就足够了。使端口1433可用于所有配置文件(私有,公共,域)解决了该问题。

感谢基督徒。即使在我的情况下不需要端口445,您的评论仍然很有帮助。我尝试了一下,但没有成功。因此关键是找出哪个端口是阻塞端口。

这可以通过一个简单的netstat命令来完成。当连接断开时首先执行netstat,然后在连接断开时执行netstat是一种非常简单的方法,可以确定哪个端口必须是开放式的。

© www.soinside.com 2019 - 2024. All rights reserved.