我正遭受暴力入侵。一个机器人正在试图破解 sa 密码。如何在 SQL Server 中限制登录尝试 3 次?
另外我想屏蔽一个IP,该怎么做?
答案1
更详细地讲一下其他人所说的内容,sql server 从未打算直接从互联网访问。您应该通过防火墙来访问它,并且最好将所有 http 请求转发到 web 服务器,然后 web 服务器将任何 sql 内容发送到 sql 服务器。 您应该无法从互联网直接访问 SQL Server。
答案2
如果您使用的是 SQL Server 2005 及更高版本,那么您可以为此使用 LOGON 触发器。
请参阅安全专家 Brian Kelley 的这篇精彩文章
http://www.sqlservercentral.com/articles/Security/66151/
但最好在它影响 SQL Server 之前处理它。
答案3
我的sshd_block脚本监视事件日志中来自 SSH 守护程序的消息,并在足够数量的登录失败(或特定用户的一次登录失败,如“root”或“sa”)后将源 IP 地址黑洞化,可能可以根据您的目的进行调整。
我现在没有空闲时间做这件事。许可证允许您自己做。如果我有时间,我可能会自己做,只是为了在脚本中实现该功能。
话虽如此,您为什么需要整个互联网才能连接到您的 SQL Server 实例呢?限制连接到 SQL Server 端口的能力的基于主机的防火墙规则也有助于阻止这种情况。很难想象您的应用程序需要从整个互联网直接访问 SQL Server。