我有一个媒体网站,存在用户访问并抓取所有内容的问题。我在页面上放置了一个不可见的 URL 来捕获蜘蛛,它会立即阻止 IP,但有些人已经弄清楚了 URL 方案并正在创建自己的脚本。
到目前为止,我见过的所有 fail2ban 过滤器都用于处理失败的登录尝试,但我希望有一个更先进的过滤器,可以检测、限制和/或阻止滥用者。抓取工具使用的 URL 都是有效的,因此如果它们的速度足够慢,我将无法分辨,但我想我可以通过 fail2ban 阻止业余爱好者。
我怎样才能在 fail2ban 中正确实现此过滤器,同时尽量减少对合法用户的误报?
答案1
我不太确定 fail2ban 是否是合适的工具;你可能需要看看类似 mod_security 的东西(http://www.modsecurity.org/)。您将能够跟踪来自会话或 IP 上下文的请求,定义规则来描述可疑流量,然后相应地拒绝/减慢流量。
编辑:您没有指定,所以我只是假设您正在使用 Apache。