Fazendo hierarquia proxy/Squid

Este tutorial nos explica como configurar uma hierarquia em seus servidores proxy, dessa forma você passa a desatolar seu servidor proxy principal, que passa a ser auxiliados pelos seus "slaves". Muito útil para redes de alto tráfego.

[ Hits: 54.097 ]

Por: flipe em 02/07/2004 | Blog: http://linuxplue.blogspot.com


Opções para se fazer uma hierarquia



Primeiro habilite a porta ICP em ambos os servidores (o padrão é 3130):

icp_port [número da porta icp]

Agora coloque a opção que colocará nossa hierarquia de pé:

cache_peer

Especifica outros caches na hierarquia. A opção cache_peer é dividida em 5 campos, e sua saída é a seguinte.

cache_peer x.x.x.x parent 3128 3130 no-digest no-netbd-exchange

Onde:
  • x.x.x.x - o IP ou nome da máquina que será pesquisada.
  • parent - o relacionamento com o outro servidor (veja bibliografia).
  • 3128 - a porta HTTP.
  • 3130 - a porta ICP (que é quem faz as requisições).
  • o restante são as opções (que podem conter zero ou uma palavra chave). (veja bibliografia).

Há também uma opção chamada hierarchy_stoplist, comente ela. Se esta opção estiver ativada, o proxy/Squid não conseguirá fazer a hierarquia de cache.

Uma lista de palavras que, encontradas na URL, farão com que o objeto seja manipulado automaticamente por esse cache:

hierarchy_stoplist cgi-bin ?

A ACL aqui é só para colocarmos junto com a opção "no_cache". Depois faça o seguinte, por padrão o Squid cria uma ACL chamada "all". Esta ACL engloba toda sua rede, se ela não existir crie uma:

acl all(pode ser outro nome) src 0.0.0.0/0.0.0.0

Com esta opção você cria uma ACL, onde se encontrado não será feito o cache:

no_cache deny all (tem que ser o mesmo nome de nossa acl "all")

Depois dê permissão para ela com a opção http_access. Esta opção permitirá que nossa ACL seja manipulada pelo Squid:

http_access allow all
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Opções para se fazer uma hierarquia
   3. Como tudo ficaria
Outros artigos deste autor

Conhecendo o LXDE

Destrinchando a compilação do Squid

ICINGA - Monitorando máquinas remotas com NRPE

Reforçando a segurança do MTA Postfix com o Apolicy

Configurando Postfix + MySQL + Courier + SPF + Clamav + SpamAssassin + Greylist + TLS

Leitura recomendada

Squid 3.1.5 com suporte a TPROXY (sem bridge)

Colocando senha nos gerenciadores do Squid (SARG e MYSAR) de forma simples

Gerando e gerenciando relatórios mensais com o SARG

Criando delay pools (Proxy/Squid)

SquidGuard: Bloqueando o acesso a Web

  
Comentários
[1] Comentário enviado por removido em 02/07/2004 - 10:12h

Muito bom seu artigo! Provavelmente esta é a solução para muitas empresas que tem a velocidade da sua navegação reduzida por criar um "funil" no proxy... minha faculdade é um exemplo... muitas máquinas usando um só proxy.
Aproveito para perguntar... :) Às vezes tenho problemas de versões de páginas no Squid... tem como resolver isto? Por exemplo... o webdesigner atualiza o site da empresa e manda pro FTP, mas quando ele acessa o site, ainda está a versão antiga. Eu não achei solução ainda! Toda vez que isso acontece, eu tenho que resetar o cache para contornar o problema... poderia me ajudar?

[2] Comentário enviado por helizonaldo em 11/10/2005 - 12:35h

Dúvida:
Aqui no seu servidor eu tenho autenticação de usuário e regras de bloqueios pra downloads e alguns sites pornográficos alem do SARG para monitorar cada usuário,

Sobre as minhas regras de bloqueio como fica? O servidor slave seque essas regras ou vou ter que criar todas as regras também no slave?

Sobre o SARG ele vai mostrar o acesso dos usuários separadamente como antes ou só exibira relatório do servidor slave como um só?

Espero que tenha sido claro.
Grato.

Ha! sobre a dúvida do colega ai vai uma dica que pode ajudar...

<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">

Inseri essas linhas no cabecalho do seu HTML, elas impedem que sua pagina seja salva no cache.

[3] Comentário enviado por comfaa em 10/10/2008 - 09:33h

muito bom o artigo

[4] Comentário enviado por alerocha79 em 23/04/2010 - 18:36h

Montei cache peer porém acontecia erro quando pesquisava algo ou acessa alguns links de sites.
A seguinte mensagem de erro era:

The requested URL could not be retrieved
While trying to retrieve the URL: www.google.com.br/search">http://www.google.com.br/search?
The following error was encountered:
Unable to determine IP address from host name for www.google.com.br
The dnsserver returned:
Server Failure: The name server was unable to process this query.
This means that:
The cache was not able to resolve the hostname presented in the URL.
Check if the address is correct.
Your cache administrator is webmaster.
Generated Fri, 23 Apr 2010 21:30:41 GMT by localhost.localdomain (squid/2.7.STAB


Solução:
Faltava adicionar uma linha: never_direct allow all
no squid.conf, tem que adicionar após a linha: acl all src all

Por fim a parte do squid.conf para cache_peer ficou assim:
### porta icp
icp_port 3130

cache_peer <ip> parent 3128 3130 no-digest no-query
acl all src all
never_direct allow all


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts