
Estou recebendo muitos avisos de falsos positivos enviados pelo mod_evasive instalado em meus servidores Apache. Eles sempre acontecem em downloads de arquivos PDF grandes. Quando os clientes baixam PDFs do meu site, eles usam muitas conexões simultâneas, o que aciona o comportamento de lista negra no mod_evasive. Existe alguma maneira de excluir PDFs do rastreamento mod_evasive? Estou usando uma configuração muito restritiva? Entendo que cada implantação é um pouco diferente, mas estou procurando sugestões. Quero parar de enviar 403 em solicitações de downloads parciais.
Aqui está o registro
[Tue Dec 31 09:47:37 2013] [error] [client 70.180.65.28] client denied by server configuration: /srv/netce/Root/pdfs/catalogs/productid_3078.pdf
70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 403 1018 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)"
70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 2560 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)"
70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 1024 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)"
70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 4096 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)"
Aqui está a configuração do mod_evasive
LoadModule evasive20_module modules/mod_evasive20.so
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
DOSEmailNotify [email protected]
DOSLogDir "/var/www"
DOSWhitelist 127.0.0.1
DOSWhitelist 192.168.*
</IfModule>
Qualquer ajuda é apreciada.
Responder1
Depois de escrever esta pergunta comecei a pesquisar e procurar uma solução. Encontrei uma solução alternativa que basicamente desativa downloads parciais. Não é a solução mais eficiente, mas parece funcionar.
<LocationMatch "\.pdf$">
Header unset Accept-Ranges
</LocationMatch>