代码之家  ›  专栏  ›  技术社区  ›  Seibar

如何在SQL Server 2005中限制失败的登录?

  •  3
  • Seibar  · 技术社区  · 17 年前

    我相信我的服务器一直是对sql server 2005(sqlexpress)进行暴力攻击的目标。我的事件查看器日志中充满了SQL Server的“失败审核”消息。尝试通常持续一到两个小时,每次尝试间隔1-2秒。

    用户“sa”登录失败[客户端:222.169.224.163]

    事件ID:18456。根据sql server日志中的匹配条目,我发现每个登录都由于密码不匹配而失败。我也见过其他用户的尝试,包括“administrator”和“administrador”。每个会话都来自不同的IP地址,来自意大利和中国等国。

    可以采取哪些对策? 我不想锁定用户帐户,因为这样我的站点和应用程序将无法访问服务器。是否可以通过SQL Server 2005限制登录尝试?例如,以几何方式增加失败登录尝试之间的“等待时间”?

    4 回复  |  直到 12 年前
        1
  •  5
  •   GregD    17 年前

    据我所知,没有一种方法可以限制对SQL Server的登录尝试。然而,我有点好奇互联网用户是如何做到这一点的。你不是在防火墙后面吗? 这是一个可怕的途径,应该尽快补救。

    我的web服务器在防火墙后面,唯一允许访问的端口是80和443。

        2
  •  3
  •   Sunny Milenov    17 年前

    虽然这不是您问题的答案,但将数据库服务器暴露在Internet上从来都不是一个好的做法。提供web服务以安全方式访问数据,并将服务器隐藏在防火墙后面。

        3
  •  1
  •   billb    17 年前

    考虑使用防火墙阻止SQL Server端口(1433)上的传入连接。

        4
  •  0
  •   iuli    17 年前

    一个快速解决方案是重命名SA帐户并修改依赖于此SQL Server的服务的连接参数。

    更改登录sa disable;

    更改名为[sys12-21admin]的登录sa;

    (当然,请选择其他名称,而不是建议的名称。)

    更多细节 http://blogs.msdn.com/sqltips/archive/2005/08/27/457184.aspx

    通过增加失败登录尝试之间的“等待时间”,可以拒绝对SQL Server的正确访问。

    据我所知,应用程序正在使用“sa”登录来执行日常任务,这可能会锁定帐户。以防发生这种情况 http://www.windowsecurity.com/articles/Hacking_an_SQL_Server.html

    当然,这是另一个安全问题,因此您应该根据前面的帖子中的建议,尽快停止访问。