nGinX Proibido ainda aciona o limite de solicitações

2

Eu tenho algumas regras de "negação" antes da configuração do limite de solicitação. Se um usuário bloqueado (pelas regras de negação) estiver digitando o site, ele ainda acionará o limite de solicitação e, portanto, criará milhares de entradas de log. Por quê? Eu esperava que não passasse das regras de negação.

    include        /etc/nginx/blacklist.conf;
    limit_req zone=limit burst=3 nodelay;

O log mostra um erro proibido e, logo após, centenas de erros de limitação de solicitação. Isso se repete repetidamente.

    
por Michael 02.05.2015 / 16:24

1 resposta

1

Quando o nginx processa uma solicitação, ela passa por várias fases . Entre eles, as fases pré-acesso e acesso . O Preaccess é normalmente onde limit_req funciona enquanto o acesso é onde as diretivas allow / deny funcionam. Isso significa que a limitação de taxa é feita antes de filtragem de IP se ambas as diretivas forem declaradas no mesmo contexto.

Portanto, se a sua vontade é tentar obter algum processo similar ao fail2ban (dado o seu código de retorno 444) trabalhando diretamente no nginx usando diretivas nativas, isso simplesmente não é possível por natureza.

    
por 03.05.2015 / 01:48

Tags