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: 53.858 ]

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

Criando delay pools (Proxy/Squid)

Conhecendo o LXDE

Destrinchando a compilação do Squid

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

Servidor NIS/NFS

Leitura recomendada

Squid3 no Debian 8 (Jessie) com suporte a filtro de páginas HTTPS

Recebendo relatório do SARG via e-mail (Gmail)

Proxy transparente com Squid 2.6 e FWBuilder

SquidGuard: o bloqueador de listas para o Squid

Administrando usuários do Squid via web como o Admuser

  
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