我有一台 apache2 服务器,其中有一个使用 Debian/Linux 上的 postgres db 的应用程序。该服务器有 1.2 GB 的 RAM。
在客户端(浏览器),如果我长时间(大约 1 分钟)不停地刷新窗口(F5),apache2 和 postgresql 最终会崩溃,恢复后一切又恢复正常。这是由于应用程序编程不佳,我无法控制,而且我不断向服务器发送请求,服务器试图回答所有请求。
我的问题是,Debian 上是否有工具可以查看滥用的 IP 并将其阻止一段时间?任何工具都可以。
更新:这是从服务器端的角度,抽象出每个 HTTP 请求需要完成的低效/负载密集型操作。忘记应用程序,从服务器的角度来思考。
谢谢
答案1
mod_evasive 可以做到这一点,正如您所发现的。您也可以使用 iptables 来实现,请查看http://www.debian-administration.org/articles/187