Limitando tamanho de downloads com o Squid

Publicado por Valmar Neves em 05/03/2007

[ Hits: 22.499 ]

 


Limitando tamanho de downloads com o Squid



Esta é uma configuração de ACL no Squid de modo limitar o tamanho dos downloads efetuados pelos usuários.

acl html rep_mime_type text/html
reply_body_max_size 0 allow html
reply_body_max_size 10485760 allow all

Onde:
  • html é uma acl do tipo html e texto puro --> páginas de sites;
  • com o parâmetro reply_body_max_size 0 allow html --> informamos que não terá limite para download de páginas de conteúdo html/text, sendo que esse foi o conteúdo que declaramos na acl html;
  • já com o parâmetro reply_body_max_size 10485760 allow all --> informamos que somente será permitidos downloads de arquivos com no máximo tamanho de 10 Mb.

Lembrando que o cálculo para o tamanho do download é feito da seguinte maneira: 1 Mb equivale a 1024 * 1024 = 1048576 e para chegar a 10 Mb multiplica-se por 10 = 10485760.

Ok, no momento em que um usuário tentar efetuar um download de algum arquivo com tamanho acima de 10 Mb, será retornado uma página do Squid informando que a requisição GET é muito grande. Já aí fica a teu critério personalizar a página de erro com uma mensagem mais amigável.

Um grande abraço a todos.

Outras dicas deste autor

Implementação de segurança em conexões remotas (SSH)

Rodando arquivos RMVB no TOTEM

Leitura recomendada

Configurando seu Slackware facilmente com PKGTool

Problemas com o som no Conectiva Linux 10

Atalho para área de trabalho no lançador do Ubuntu

Melhorando a velocidade do RAID 1 com resync

Fedora Linux e Optiplex 320

  

Comentários
[1] Comentário enviado por mau_smo em 05/03/2007 - 08:55h

Ótima dica!!

[2] Comentário enviado por andersonjackson em 05/03/2007 - 08:57h

Essa eu não sabia.

Muito legal.

[3] Comentário enviado por slaypher em 05/03/2007 - 10:52h

Excelente.

[4] Comentário enviado por Julio_Jose em 28/08/2007 - 16:57h

simplesmente fantástico...Vou fazer isso aqui no squid da empresa xD.

[5] Comentário enviado por maicom_rm em 06/06/2008 - 12:49h

Muito boa sua dica mais so uma duvida que pra min o linux ainda e novo como faço para liberar um ip na rede pra passar fora da regra obrigado

[6] Comentário enviado por the-root em 06/06/2008 - 16:21h

maicom

cria um arquivo chamado rede_vip em /etc/squid/

este arquivo conterá os ips que passaram por fora da regra

exemplo

192.168.0.1

no squid.conf adcione

acl fora_da_regra src "/etc/squid/rede_vip"


acl html rep_mime_type text/html
reply_body_max_size 0 allow html
reply_body_max_size 10485760 allow all !fora_da_regra

assim toda a rede passará exceto os ips dentro do arquivo rede_vip

abracos

[7] Comentário enviado por maicom_rm em 06/06/2008 - 22:25h

Muito Obrigado pela sua ajuda ainda vo ficar bom no linux rsss

[8] Comentário enviado por mrjeday em 13/08/2009 - 10:19h

Fala Valmar, tbm gosto dessa regra, mas to passando por uma dificuldade com algumas regras inclusive essa, vê se pode me ajudar.
http://www.vivaolinux.com.br/topico/Squid-Iptables/Squid-nao-abre-excessoes-em-acls/
Uso Ubuntu 9.04 com kernel 2.6.28-14-generic, squid 2.7.STABLE3.

Aguardo

Victor Figueira

[9] Comentário enviado por maresiapunk em 14/11/2016 - 11:04h

Eu adicionei as linhas citadas, mas o squid não inicia mais após a alteração.

Segue o erro:
[root@network2 ~]# squid -d 1
2016/11/14 08:01:25| aclParseAclList: ACL name 'allow' not found.
FATAL: Bungled squid.conf line 35: reply_body_max_size 0 allow html
Squid Cache (Version 3.1.23): Terminated abnormally.
CPU Usage: 0.007 seconds = 0.003 user + 0.004 sys
Maximum Resident Size: 23232 KB
Page faults with physical i/o: 0
===============================

Como proceder?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts