Estou executando um servidor web Apache e gostaria de adicionar alguns limites de taxa simples por endereço IP individual.
No momento, estou recebendo o que parecem ser muitas solicitações de bot chegando ao site e isso está retardando um pouco as solicitações normais.
Eu gostaria de poder adicionar limitação de taxa para desacelerar os bots, ao mesmo tempo que não impede os rastreamentos do Googlebot quando ele aparece. Suponho que algo em torno de 20.000 solicitações/hora por IP deve bastar, provavelmente menos.
De qualquer forma, qual é o método mais simples para adicionar limitação de taxa ao Apache?
Até agora encontrei algumas opções:
mod_security
mod_evasive
mod_ratelimit
mod_limitpconn
Mas não parece haver uma solução clara e óbvia.
Alternativamente, parece que usar o Nginx como proxy reverso (e usar a limitação de taxa incorporada a ele) seria outra opção viável. Parece mais fácil de implementar do que o que descobri até agora também para o Apache. Embora eu prefira usar o Apache apenas se houver uma solução simples que esteja faltando.
Fail2Ban parece ser outra solução simples, mas não tenho certeza se poderia usá-lo para retornar 429
códigos de resposta quando um visitante atingir o limite de taxa.
O que você recomendaria?