Melhor maneira de banir / acelerar automatizado de clientes agressivos em um servidor web Linux / Apache por um período de tempo?

2

Noto picos ocasionais na carga do meu servidor e quando verifico os registros de acesso, percebo um padrão para algum pôster de fórum automatizado que tenta acessar repetidamente um URL de comentário / resposta. Qual seria a melhor maneira de acelerá-los / baní-los por alguns minutos / horas? Pode CSF, por exemplo, fazer assim? Estou realmente procurando uma solução rápida e suja.

    
por giorgio79 22.08.2012 / 16:20

1 resposta

2

Iptables poderiam ser usados para esse fim.

Bloqueio de conexões paralelas:

iptables -A INPUT -p tcp --syn --dport 80 -m connlimit \
     --connlimit-above 20 -j REJECT --reject-with tcp-reset

Bloqueio de inundações (bloquear mais de 10 conexões por minuto):

iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent \
   --update --seconds 60 --hitcount 10 -j DROP
    
por 21.03.2013 / 19:15