我目前在 PHP/mysql 中有一个自定义实现,用于跟踪 Web 访问并阻止超过同一 IP 特定速率的访问。即,如果给定源 IP 在过去 Y 秒内访问服务器超过 X 次,则它将被重定向到预定义位置 Z,并且正常请求处理将被中止。
它运行正常,但是给 MySQL 带来了很大的压力。
所以我想知道是否有一个专门的工具可以实现这个功能?也许是 Apache 模块或某种过滤器?
答案1
答案2
您可能能够使用 iptables 在较低级别执行此操作并完全绕过 apache/mysql....匹配并转发到另一个主机/端口?我只删除了:
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 6 -j DROP