você está aqui: Home  → Arquivo de Mensagens

Limitando tamanho de envio do método POST no SQUID

Colaboração: Smailli Hemori Moraes

Data de Publicação: 25 de Novembro de 2006

Crie o script /usr/lib/squid/size.sh com o seguinte conteúdo

  #!/bin/sh
  
  while read size limit; do
  **if [ "${size}" -gt "${limit}" ]; then
  echo ERR
  else
  echo OK
  fi
  done

Torne-o executável com o comando

  # chmod +x /usr/lib/squid/size.sh
  1. Crie as seguintes ACLs em /etc/squid/squid.conf

    Chamada de ACL externa para verificação do tamanho do envio no método POST

      external_acl_type request_body %{Content-Length} /usr/lib/squid/size.sh
    

    ACL que define o tamanho do método POST, nesse caso 10 kb
      acl request_max_10KB external request_body 10240
    

    Bloqueia todo POST acima de 10 kb
      http_access deny !request_max_10KB
    

    ==EXTRAS==

    Pode-se atrelar essa ACL com outras, por exemplo com algum IP

      http_access deny !request_max_10KB IPS_BLOQUEADOS
    

    Assim, quando o IPS_BLOQUEADOS tentar fazer um post maior de 10KB (enviar um anexo por exemplo) ele será bloqueado. Porém, essa configuração pode negar envio de algum tipo de formulário que seja maior que 10KB.

    Um exemplo é o tradutor do google, se tentar traduzir algo que ultrapasse o método POST em 10KB será bloqueado. Para sanar isso crie a seguinte regra
      acl GOOGLE dstdomain translate.google.com.br
      http_access deny !request_max_10KB localhost !GOOGLE
    
    O mais correto, criar uma ACL com os webmails atrelados e limitar o POST somente para eles.
      acl DOM_WEBMAIL dstdomain "/etc/squid/dominios_webmail.conf"
      acl USER_NO_ATT proxy_auth "/etc/squid/usuarios_webmail_sem_anexo.conf"
      
      http_access deny !request_max_10KB DOM_WEBMAIL USER_NO_ATT
    


Veja a relação completa dos artigos de Smailli Hemori Moraes

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script