Squid (squid.conf)

Limitando banda do Squid com Delay Pools

Categoria: Segurança

Software: Squid

[ Hits: 25.571 ]

Por: Felipe Franco


Tem alguns sites que aborrecem qualquer administrador, além de roubar conexão. Portanto é interessante ao invés de restringir limitarmos o acesso do mesmo! Ex: Quando um usuário tentar conectar no Orkut, podemos limitar uma Conexão de 10 KBs para essa página.....


###################SqUiD#####################
###Felipe Franco###
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

#hierarchy_stoplist cgi-bin ?

cache_mem 256 MB #Mudar
cache_swap_low 90
cache_swap_high 95
maximum_object_size 30000 KB
minimum_object_size 0 KB
maximum_object_size_in_memory 4000 KB
cache_dir ufs /var/cache/squid/ 5000 16 256 #Mudar
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_swap_log /var/log/squid/swap.log
debug_options ALL, 2
dns_nameservers 200.202.193.69/200.202.193.66 #Mudar
error_directory /usr/share/squid/errors/Portuguese

#ACLs#

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 10.20.0.0/255.255.0.0 #Mudar
acl SSL_ports port 443 563
acl Safe_ports port 21
acl Safe_ports port 22
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 1025 - 65535

# É aqui que é feito os Bloqueios e Permissões de Sites!
# Obs: Os arquivos "sites.txt" e "palavras.txt" contém 
# o conteúdo a ser Bloqueado. Enquanto "palavras.txt"
#que está no diretório liberado permitirá o acesso!

acl bloqueados url_regex -i "/etc/squid/bloqueio/sites.txt"
http_access deny bloqueados
acl Bloqueado1 url_regex -i "/etc/squid/bloqueio/palavras.txt"
acl Permitido1 url_regex -i "/etc/squid/liberado/palavras.txt"
http_access deny Bloqueado1 !Permitido1

# Delay Pools
# Primeiro declarar sua rede, A lista das páginas que
# ficarão lentas e o arquivos especificados!
acl nucleo url_regex -i 10.20
acl lento url_regex -i "/etc/squid/lento/lento"
acl extensoes url_regex -i .mpg$ .avi$ .mpeg$
# No delay_pools colocamos a quantidade de Pools
# declarada!
delay_pools 3
# Delay_class - Define a classe de cada delay pool. Deve haver  
#exatamente uma classe de delay para cada delay pool.
# Delay-parameters - É nesse parametro aonde você especifica a 
#velocidade da conexão. 
# Ex: delay_parameters 1 5000/5000 5000/5000.
# Aonde 5000 é dados em Bites e quando colocamos -1/-1 quer 
#dizer que é ilimitado
# Delay_access - Determina em qual delay pool uma requisição 
#será encaixada.
###Exemplo para o entendimento### 
#acl sites_bobos url_regex -i "Diretorio com a lista"
#delay_pools 1
#delay_class 1 2 .... é o primeiro delay que faz parte da classe 2
#delay_parameters 1 200/200 200/200 .... a conexão atribuida para 
#o delay 1 é de 200 b/s.
# delay_access 1 allow sites_bobos ...é aqui que nós falamos que a 
#delay 1 é o sites_bobos e também damos a permissão para o 
#mesmo.
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_class 2 2
delay_parameters 2 5000/5000 5000/5000
delay_class 3 2
delay_parameters 3 100/100 100/100
delay_access 1 allow nucleo
delay_access 2 allow lento
delay_access 3 allow extensoes

acl CONNECT method CONNECT
http_access allow manager localhost
http_access allow all
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
visible_hostname allegro.nucleo   #mudar
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
http_port 3128

#Qualquer duvida ... felicruel@hotmail.com ...
  


Comentários
[1] Comentário enviado por agk em 03/10/2005 - 19:04h

Muito bom, pra falar a verdade excelente.
Como eu não tinha pensando nisso antes, é muito melhor deixar os sites "indevidos" lentos que bloquear eles, pois bloqueando logo o usuário acha outro site semelhante para ficar consumindo banda.
Valew!!!

[2] Comentário enviado por plague70 em 04/10/2005 - 08:58h

muito bom mesmo...



www.plague.com.br

[3] Comentário enviado por internero em 04/10/2005 - 09:35h

Excelente dica!

+favoritos :)

[4] Comentário enviado por guimpel em 04/10/2005 - 10:31h

bem legal!

[5] Comentário enviado por santanna em 09/10/2005 - 09:05h

Excelente artigo!!!

[6] Comentário enviado por renato.moron em 09/10/2005 - 16:11h

bastante interessante!!
apesar de nao conhecer muita coisa deu pra te uma boa ideia do que vc quis ensina!!

[]`s

[7] Comentário enviado por andrack em 10/10/2005 - 11:14h

Amigo...

PERFEITO! Essa dica foi ótima...


Parabéns!

[8] Comentário enviado por procopio em 27/10/2005 - 14:28h

valeu cara, perfeito, so falta eu aprender agora a limitar acesso por ip da maquina, te mais

[9] Comentário enviado por felicruel em 04/11/2005 - 10:39h

Neste link tem uma lista de palavras e Sites Bloqueados!!!! =)
http://200.149.220.182/squid

[10] Comentário enviado por felicruel em 04/11/2005 - 10:39h

Site com minhas confs atuais!!! em desenvolvimento

http://felipefranco.here.ws

[11] Comentário enviado por Rhoux em 15/11/2008 - 19:39h


Estou seguindo o seu tuto e foi o que mais gostei e me atende no que quero fazer.

So que estou com algumas duvidas.

1º - La onde se defina a rede a minha rede é 10.1.1.x/255.255.255.0 (10.1.1.0/24) entao eu coloquei.
acl nucleo url_regex -i 10.1 correto?

2º - Estou com duvidas tb sobre os bloqueios e liberação... se entendi bem em /etc/squid/bloqueio eu crio um arquivo sites.txt e coloco o url dele la dentro (www.sexyclube.com.br) e em palavras.txt eu coloco uma palavra e ae bloqueia a site por exemplo playboy (bloqueia www.playboy.com e www.playboy.com.br) é isso? e Em /etc/squid/liberado ele so vai liberar os sites q estiverem na lista? Preciso so de bloquear alguns e controlar a banda de outros como youtube.

3º - No site youtube quero deixar q ele navegue a 5kbps então devo colocar assim ?
delay_parameters 2 40960/40960 40960/40960

4º - Devo criar um arquivo nesse caminho /etc/squid/lento/lento.txt e adicionar o site que quero que ele controle a banda?
youtube ou www.youtube.com ou www.youtube.com.br ou tanto faz ?


Sorry...sou iniciante no mundo linux e estou aprendendo em tutoriais, forum e artigos na net.

[12] Comentário enviado por Rhoux em 16/11/2008 - 23:28h

Caraca...deu certo aq....mudei de acordo com minha rede tirei a linha "acl Safe_ports port 1025 - 65535" pois deu erro aqui e mudei de http_port 3128 para "http_port 3128 transparent" pois meu squid é 2.6 e OTIMO.


Felipe vc é o CARA !!! Meus PARABENS !!!


Resolveu o meu problema.


Contribuir com comentário

  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts