伙计们,我们都知道,IP列入黑名单并没工作-垃圾邮件发送者可以通过代理,加,合法用户可能会影响到...这就是说,列入黑名单对我来说似乎是一种有效的机制,以阻止持久性攻击者,鉴于实际的IP的是动态的确定,根据应用程序的反馈和用户的行为。

例如:-有人试图以暴力破解你的登陆屏幕上 -写得不好的机器人问题非常奇怪HTTP请求你的网站 -脚本的儿童使用扫描仪扫描寻找漏洞,在你的程序

我想知道,如果下列机构的会的工作,和如果是这样,你知道,如果有任何工具,这样做:

  • 在一个网络应用程序,开发具有钩到报告的一个"罪行".一罪行可以轻微(密码无效),这将需要几十个这样的犯罪,会被列入黑名单;或者它可以是主要的,而一对夫妇这样的罪行在一个24小时期间踢你出去。
  • 某些形式的网络服务器级框踢之前,每页载,并且如果确定用户从一个"坏的"知识产权。
  • 还有一个"宽恕"机构建:罪行不再计一个IP后一段时间。

谢谢!

额外注意:这会是真棒,如果这方案曾在PHP,但我很想听听你的想法有关的方法在一般情况下,对于任何语言/平台

有帮助吗?

解决方案

你是一个*nix机?这种事情可能是最好留给操作系统一级,使用类似

编辑:

在回应评论的,是的(排序)。然而,我们的想法是,令可以独立地工作。你可以设置一个特定的阈值限制(例如,框请求在港口的80TCP超过x的请求/分钟),而这是所有的透明地处理(即,你真的应用程序并不需要知道什么,具有动态阻止采取的地方)。

我建议对规则的方法如果你有完全控制的框框,而更愿意让你处理防火墙的限制(优点是,你不需要建立这种逻辑进入你的网页应用程序,它可以节省资源的请求下降之前,他们打你的webserver)

否则,如果你希望阻挡不会是一个巨大的成分,(或者你的程序是便携式并不能保证获得令),那么它就会更有意义建设的逻辑进入你的应用程序。

其他提示

看看 fail2ban.蟒蛇的框架,允许你来提高IP表块跟踪登录文件的模式的错误行为。

我认为这应该是一个组合使用用户名加IP块。不仅仅是知识产权。

你们看到的定义的锁定的代码。有些应用程序的开源世界,包含各种口味的这种代码。也许你应该看看这些,尽管您的要求是很微不足道,因此标志着一个IP/username组合,以及利用对于阻止IP x量的时间。(注意我说的框IP,不用户。用户可能试图获得在线通过一个有效的IP/username/pw组合。)

事实上,你甚至可以保留痕迹的用户登录,在记录中从一个不知名的知识产权与一个3罢工坏的用户名/密码组合锁IP了但是只要你喜欢,用户名。(请注意,大量互联网服务提供商分享的Ip地址,因此....)

你可能还需要地方,延迟在身份验证,这样一个IP不能尝试一登录超过一次,每'y'秒左右。

我已经开发了一个系统客户,其保留的轨道碰撞的网络服务器和动态禁止的IP地址在操作系统/防火墙等级变量的时间用于某些罪行,所以,是的,这绝对是可能的。作为欧文所述,防火墙的规则是一个更好的地方做这样的事情比在网络服务器。(不幸的是,客户选择举行一个紧版权在此代码,所以我不是在自由分享。)

我一般工作在Perl而不是PHP,但是,只要你有一个命令线路接口,以防火墙的规则发动机(比如说,/sbin/ip),就应该能够做到这一点很容易地从任何语言,它有能力执行系统的命令。

err这种系统是简单和普遍,我可以给你我很轻松了

其简单并且简要地说明这里 http://www.alandoherty.net/info/webservers/

剧本写arn不可下载的{,因为没有科芒特里当前添加}但是给我一个电子邮件,从站点上,我会扔在码你很乐意帮助调试/taloring它给你的服务器

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top