我遇到了一个问题,无法弄清楚如何处理。我在Windows 2008 R2服务器上有一个SQL Server。此SQL Server 2005用于从Internet上其他位置的另一个SQL Server接收数据库订阅。我已经通过防火墙打开了sql server端口,但是在范围内,我输入了其他SQL Server的IP。这样做是希望通过该端口的连接请求不会到达SQL Server,除非该请求来自其他SQL Server(其IP在防火墙规则的作用域中列出)。但是,当我看到日志时,有数百个“登录失败的用户sa”条目(并且它们每秒钟传来一次)。看来有些黑客正试图用蛮力猜测用户的密码。但是问题是,为什么Windows允许这些请求到达SQL Server,即使它们不是来自防火墙作用域中列出的IP地址也是如此?什么是保护此SQL Server的正确方法。除了其他SQL Server的IP,没有其他IP需要连接到该sql服务器。
编辑-更多信息:
我在不同机器上的sql服务器端口上运行了telnet。Telnet失败,除非从防火墙范围中特别提到的计算机运行。因此,看来防火墙阻止了sql server端口正常。但是,为什么我会从SQL Server日志中的不同IP地址看到对用户“ sa”的失败登录请求?黑客是否有可能通过端口80进入计算机,然后以某种方式尝试连接到sql server?端口80和443向所有人开放。除sql server端口(仅对一个特定IP打开)以外,所有其他端口均关闭。Web服务器上端口80上没有任何运行的程序可能会导致访客访问SQL Server。实际上,Web服务器中只有一个index.html(与SQL无连接的纯HTML)文件。这只是正在设置供将来使用的测试服务器。仅在SQL Server中测试数据。
编辑:
我启用了防火墙跟踪,以同时包括丢弃连接和成功连接。现在它正在跟踪所有内容。然后,转到SQL Server日志,在其中可以看到来自中国不同IP地址的这些失败的登录尝试。但是,防火墙日志中没有这些IP地址的条目。这怎么可能?他们可以完全绕过防火墙到达SQL Server吗?如果假设某些防火墙端口已打开,可以通过它们进入,则防火墙日志应显示该IP地址的条目。我完全不知所措。