默认情况下,SQL Server使用1433端口监听,很多人都说SQL Server配置的时候要把这个端口改变,这样别人就不能很容易地知道使用的什么端口了。可惜,通过微软未公开的1434端口的UDP探测可以很容易知道SQL Server使用的什么TCP/IP端口了。 例如:“2003蠕虫王”利用SQL SERVER 2000的解析端口1434的缓冲区溢出漏洞,对网络进行攻击。
不过微软还是考虑到了这个问题,毕竟公开而且开放的端口会引起不必要的麻烦。在实例属性中选择TCP/IP协议的属性。选择隐藏 SQL Server 实例。如果隐藏了 SQL Server 实例,则将禁止对试图枚举网络上现有的 SQL Server 实例的客户端所发出的广播作出响应。这样,别人就不能用1434来探测你的TCP/IP端口了(除非用Port Scan)
SQL Server 2005不再在1434端口上进行自动侦听了。实际上,是完全不侦听了。你需要打开SQL 浏览器服务,把它作为解决客户端向服务器端发送请求的中间媒介。SQL 浏览器服务只能提供名字/端口决议。