Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Squid - Limitar banda para determinados sites e IPs
Linux user
Publicado por Adriano Henrique Ferraz em 04/07/2012

Login: adrianohf, 5495 pontos | Blog: http://www.adrianoferraz.com.br
[ Hits: 3431 ]

Squid - Limitar banda para determinados sites e IPs

Dica destinada a configurar o Proxy Squid para limitar banda de determinados sites e para determinados IPs internos.

Pensaremos no seguinte cenário: um ou dois funcionários acessam o YouTube com muita frequência para ouvir músicas, porém, os outros colaboradores acessam para buscar ajuda ou uma vídeo-aula.

Portanto, seria injusto bloquear o YouTube para toda a rede. Pensando nisso, apresento a seguinte configuração que criei e está me atendendo perfeitamente.

1. Preparação de ambiente: criando arquivos e diretórios

Crie o seguinte diretório: /etc/squid/mod_bandwidth

Em seguida crie os seguintes arquivos:
  • /etc/squid/mod_bandwidth/ips_1k.txt
  • /etc/squid/mod_bandwidth/sites_1k.txt
  • /etc/squid/mod_bandwidth/ips_50k.txt
  • /etc/squid/mod_bandwidth/sites_50k.txt

2. Configuração do Squid: editar o squid.conf

No arquivo squid.conf, insira as seguintes linhas:

################### Delay Pools ###################
acl sites_1k url_regex -i "/etc/squid/mod_bandwidth/sites_1k.txt"
acl sites_50k url_regex -i "/etc/squid/mod_bandwidth/sites_50k.txt"
acl ips_1k src "/etc/squid/mod_bandwidth/ips_1k.txt"
acl ips_50k src "/etc/squid/mod_bandwidth/ips_50k.txt"

delay_pools 2
# Libera 1kb/s para os sites cadastrados no arquivo "sites_1k.txt"
delay_class 1 2
delay_parameters 1 -1/-1 1000/1000 1000/1000
delay_access 1 allow sites_1k ips_1k
# Libera 50kb/s para os sites cadastrados no arquivo "sites_50k.txt"
delay_class 2 2
delay_parameters 2 -1/-1 50000/50000 50000/50000
delay_access 2 allow sites_50k
delay_access 1 allow sites_50k ips_50k
################### Delay Pools ###################

Salve o arquivo e faça restart ou reload no Squid:

# /etc/init.d/squid reload

3. Final: explicação

Veja que criei dois pools (duas configurações), uma para sites onde liberei somente 1 KB/s e outra para sites onde liberei somente 50 KB/s.

Os endereços IPs que estiverem no arquivo "ips_1k.txt" acessam os sites que estão no "sites_1k.txt" somente com 1 KB/s de velocidade, da mesma forma acontece com a regra de 50 KB/s.

Obs.: Qualquer site que NÃO estiver nos arquivos "sites_1k.txt" e "sites_50k.txt", não sofrerão nenhum tipo de limitação de banda.


Outras dicas deste autor
Nenhuma dica encontrada.

Leitura recomendada
   Dica Linux recomendada Placa de rede Sundance
   Dica Linux recomendada Capte rádios online via terminal Linux
   Dica Linux recomendada Linux em família
   Dica Linux recomendada Slackware Linux Essentials em português
   Dica Linux recomendada Configurando um servidor para atender duas ou mais conexões com a internet

Comentários
[1] Comentário enviado por johnnyb em 11/07/2012 - 15:26h:

Bacana mais vc Sabe como limitar portas, ou ips tipo para tornar a navegação das pessoas que usam o ultrasurf tao lento de maneira que ele desista de usar?


[2] Comentário enviado por gregorio_rr em 03/01/2013 - 08:10h:

Bacana a dica, aprendi muito com isso e implementei sua dica recentemente na empresa onde trabalho. Como utilizamos squid autenticado, ele já bloqueia automaticamente o UltraSurf sem precisar de regras e limitei a velocidade de banda por usuários, para 1mbps e 256kbps, os administradores que terão acesso full não incluí em regra alguma e ficou 100%.

#acl banda_1mbps proxy_auth -i "/etc/squid/usuarios/banda_internet/banda_1mbps"
#acl banda_256kbps proxy_auth -i "/etc/squid/usuarios/banda_internet/banda_256kbps"

###Quantidade de Controles de banda
#delay_pools 2

###Controle #1 | 1mbps
#delay_class 1 2
#delay_parameters 1 128000/128000 128000/128000
#delay_access 1 allow banda_1mbps

###Controle #2 | 256kbps
#delay_class 2 2
#delay_parameters 2 32768/32768 32768/32768
#delay_access 2 allow banda_256kbps

No arquivo de texto "banda_1mbps" adicionei os usuarios utilizarão 1Mb, em "banda_256kbps" os usuários que farão uso de 256kb e o nome que estiver em nenhum dos arquivos utilizará 100% da banda. Lembro que configurei de maneira a acessarem qq site na velocidade definida.

Para chegar ao resultado execute a seguinte soma, saiba qual a velocidade que será destinada àquele usuário, multiplique por 1024 e divida por 8.
Ex: Para 512 de velocidade de banda ficaria assim: 512 * 1024 = 524288 / 8 = 65536
Ou simplesmente multiplique o valor por 128, que é 1024/8 --> 512 * 128 = 65536.

Espero ter ajudado!



Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.