Squid

Differences between revisions 48 and 57 (spanning 9 versions)
Revision 48 as of 2007-07-12 01:49:02
Size: 4185
Comment:
Revision 57 as of 2011-09-19 23:18:55
Size: 4825
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Contents'''[[BR]][[TableOfContents]]|| ||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Contents'''<<BR>><<TableOfContents>>||
Line 3: Line 3:
== Squid == = Squid =
O Squid é um Servidor proxy cache de alto desempenho que suporta os protocolos HTTP, HTTPS,FTP, TLS, SSL. Reduz o uso da banda e melhora os tempos de resposta de páginas solicitadas que estão em cache. O Squid tem um grande controle de ACLS sendo muito flexível. Ele aumenta a velocidade de entrega da página solicitada ao cliente. Funciona em Linux, Unix e Windows, é licenciado sob o GNU GPL.
Line 5: Line 6:
O Squid é um Servidor proxy cache de alto desempenho que suporta os protocolos HTTP, HTTPS,FTP, TLS, SSL. Reduz o uso da banda e melhora os tempos de resposta de páginas solicitadas que estão em cache. O Squid tem um grande controle de ACLS sendo muito flexível.Ele aumenta a velocidade de entrega da página solicitada ao cliente. Funciona em Linux,Unix e Windows, é licenciado sob o GNU GPL. Um servidor proxy é uma ferramenta importante em uma rede interna que tenha contato com outra pública como a internet, pois implementa uma série de facilidades e controles, de modo a possibilitar que máquinas de uma rede privada possam acessar uma rede pública sem que para isso tenham uma ligação direta.
Line 7: Line 8:
Ao final deste documento saberemos como instalar e configurar basicamente um servidor proxy Squid, e como faze-lo funcionar como proxy transparente.
Line 8: Line 10:
 Instalação básica e modo transparente


== Instalando o Squid ==
== Instalando e Configurando ==
=== Instalando o Squid ===
Line 16: Line 15:
  sudo aptitude install squid squid-common
}}}
sudo aptitude install squid squid-common}}}
Line 23: Line 20:
sudo dpkg -l |grep squid

sudo dpkg -l |grep squid
squid-common 2.6.5-4ubuntu2 Internet Object Cache (WWW proxy cache)

}}}

== Configuração básica do Squid ==
sudo dpkg -l |grep squid}}}
Line 33: Line 23:
cd /etc/squid sudo dpkg -l |grep squid
squid-common 2.6.5-4ubuntu2 Internet Object Cache (WWW proxy cache)}}}
Line 35: Line 26:
sudo cp squid.conf squid.conf.sample
}}}
=== Configuração básica do Squid ===
{{{
cd /etc/squid}}}
Line 38: Line 30:
{{{
sudo cp squid.conf squid.conf.sample}}}
Line 42: Line 36:
sudo vim /etc/squid/squid.conf
}}}
sudo vim /etc/squid/squid.conf}}}
Line 64: Line 58:
=== Iniciando o Squid ===
Isso vai criar a estrutura do cache do Squid de acordo com as definiçoes da 'opção cache_dir' no arquivo squid.conf.
Line 65: Line 61:
== Iniciando o Squid ==


Isso vai criar a estrutura do cache do Squid de acordo com as definiçoes da 'opção cache_dir' no arquivo squid.conf .
Line 70: Line 62:
sudo squid -z }}} sudo squid -z}}}
Line 76: Line 68:
 * Starting Squid HTTP proxy squid [ OK ]  }}}  * Starting Squid HTTP proxy squid [ OK ]}}}
Line 82: Line 73:
Line 88: Line 78:
tcp 0 0 0.0.0.0:3128 0.0.0.0:* OUÇA


}}}
tcp 0 0 0.0.0.0:3128 0.0.0.0:* OUÇA}}}
Line 104: Line 91:
== Entendendo as LOGS e estrutura do cache == === Proxy Transparente ===
Agora precisamos adicionar a seguinte regra no Iptables, isso ira redirecionar o tráfego da porta 80 para a porta 3128
Line 106: Line 94:
O diretorio onde se encontram os arquivos gerados são {{{
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 }}}
Line 108: Line 97:
   /var/log/squid == Entendendo os LOGS e estrutura do cache ==
 * O diretorio onde se encontram os arquivos são gerados: '''/var/log/squid'''
 * Registra toda atividade como URLS acessadas falha na autenticação: '''/var/log/squid/access.log'''
 * Registra informações do cache: '''/var/log/squid/cache.log'''
 * Registra atividade dos objetos gravados e retirados do cache: '''/var/log/store.log'''
Line 110: Line 103:
registra toda atividade como URLS acessadas falha na autenticação.

   /var/log/squid/access.log
 
registra informações do cache.

  /var/log/squid/cache.log

resgitra atividade dos objetos gravados e retirados do cache.

  /var/log/store.log

 
== " Dica do dia " ==
=== Dica do dia ===
Line 127: Line 106:
sudo tail -f /var/log/access.log | grep " IP da máquina que se quer monitorar" {{{
sudo tail -f /var/log/access.log | grep " IP da máquina que se quer monitorar"}}}
Line 129: Line 109:
ex: sudo tail -f /var/log/access.log | grep " 10.0.0.1" Ex:
{{{
sudo tail -f /var/log/access.log | grep " 10.0.0.1"}}}
Line 131: Line 113:
Existem outras ferramentas mais complexas que geram relatórios detalhados como o SARG ( squid analysis report generator)  projeto de um Brasileiro chamado "Pedro Orso" mais informações em http://sarg.sourceforge.net . Obs: Existem outras ferramentas mais complexas que geram relatórios detalhados, como o SARG (squid analysis report generator), projeto de um Brasileiro chamado Pedro Orso. Mais informações em http://sarg.sourceforge.net .
Line 134: Line 115:
== Estrutura do cache ==   
O cache do squid é o local onde se armazena os objetos.
Observando a opção "cache_dir" no arquivo de configuração /etc/squid.conf podemos ver o diretorio default é o /var/log/squid.
=== Estrutura do cache ===
O cache do squid é o local onde se armazena os objetos.<<BR>>
Observando a opção "cache_dir" no arquivo de configuração /etc/squid.conf podemos ver o diretorio default é o /var/log/squid.<<BR>>
Line 144: Line 124:
=== Para saber mais ===
Line 145: Line 126:
 * [[http://www.squid-cache.org/|Squid Web Proxy Cache]]
Line 146: Line 128:
== Redirecionando o tráfego da porta 80 == === Créditos ===
||'''Wikifiers:''' RodrigoPacheco || '''Data:''' 09/07/2007 || '''Mantenedor:''' RodrigoPacheco ||
||||||||<style="text-align: center;"> [[http://wiki.ubuntubrasil.org/TimeDeDocumentacao|Time de Documentação do Ubuntu Brasil]] ||
Line 148: Line 132:

Agora precisamos adicionar a seguinte regra no Iptables, isso ira redirecionar o tráfego da porta 80 para a porta 3128

{{{
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
}}}

= Créditos =
||'''Autores:''' RodrigoPacheco||'''Data:''' 09/07/2007 ||'''Mantenedores:''' RodrigoPacheco ||

----
----

----

Squid

O Squid é um Servidor proxy cache de alto desempenho que suporta os protocolos HTTP, HTTPS,FTP, TLS, SSL. Reduz o uso da banda e melhora os tempos de resposta de páginas solicitadas que estão em cache. O Squid tem um grande controle de ACLS sendo muito flexível. Ele aumenta a velocidade de entrega da página solicitada ao cliente. Funciona em Linux, Unix e Windows, é licenciado sob o GNU GPL.

Um servidor proxy é uma ferramenta importante em uma rede interna que tenha contato com outra pública como a internet, pois implementa uma série de facilidades e controles, de modo a possibilitar que máquinas de uma rede privada possam acessar uma rede pública sem que para isso tenham uma ligação direta.

Ao final deste documento saberemos como instalar e configurar basicamente um servidor proxy Squid, e como faze-lo funcionar como proxy transparente.

Instalando e Configurando

Instalando o Squid

Instalando os pacotes necessários

sudo aptitude install squid squid-common

verificando se o pacote foi instalado corretamente

sudo dpkg -l |grep squid

sudo dpkg -l |grep squid
squid-common  2.6.5-4ubuntu2  Internet Object Cache (WWW proxy cache)

Configuração básica do Squid

cd /etc/squid

sudo cp squid.conf  squid.conf.sample

Editando o arquivo de configuração:

sudo vim /etc/squid/squid.conf

descomente as seguintes opções:

Porta padrão onde o squid vai escutar as solicitações http_port 3128.

Nome do host em rede, para exibição em possíveis erros nas solicitações dos clientes.

visible_hostname nomedohost.

ex: visible_hostname serverproxy.

"Isso vai fará com que quando o Squid ler o arquivo squid.conf ele apresente o nome do servidor definido na opção visible_hostname"

agora salve o arquivo

" esc"

:wq!

Iniciando o Squid

Isso vai criar a estrutura do cache do Squid de acordo com as definiçoes da 'opção cache_dir' no arquivo squid.conf.

sudo  squid -z

Iniciando o Daemon do Squid

 sudo /etc/init.d/squid start
 * Starting Squid HTTP proxy squid              [ OK ]

verificando se a porta 3128 esta aberta e escutando:

sudo netstat -nlt

Conexões Internet Ativas (sem os servidores)
Proto Recv-Q Send-Q Endereço Local          Endereço Remoto         Estado      
    
tcp        0      0 0.0.0.0:3128            0.0.0.0:*                OUÇA

A saida deve ser algo como isso, dependendo dos serviços que estão rodando em sua máquina.

Pronto nosso servidor já esta funcionando!!! =)

Agora é so configurar o navegador das estações.

ex: 10.0.0.1:3128

onde 10.0.0.1 é o ip do servidor proxy e 3128 a porta do squid.

Proxy Transparente

Agora precisamos adicionar a seguinte regra no Iptables, isso ira redirecionar o tráfego da porta 80 para a porta 3128

sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 

Entendendo os LOGS e estrutura do cache

  • O diretorio onde se encontram os arquivos são gerados: /var/log/squid

  • Registra toda atividade como URLS acessadas falha na autenticação: /var/log/squid/access.log

  • Registra informações do cache: /var/log/squid/cache.log

  • Registra atividade dos objetos gravados e retirados do cache: /var/log/store.log

Dica do dia

Monitoramento o acesso dos usuários de forma simples e tempo real

sudo tail -f /var/log/access.log | grep " IP da máquina que se quer monitorar"

Ex:

sudo tail -f /var/log/access.log | grep " 10.0.0.1"

Obs: Existem outras ferramentas mais complexas que geram relatórios detalhados, como o SARG (squid analysis report generator), projeto de um Brasileiro chamado Pedro Orso. Mais informações em http://sarg.sourceforge.net .

Estrutura do cache

O cache do squid é o local onde se armazena os objetos.
Observando a opção "cache_dir" no arquivo de configuração /etc/squid.conf podemos ver o diretorio default é o /var/log/squid.
como no exemplo : /var/spool/squid 100 16 256

  • 100 = numero de Megas 16 = Diretórios 256 = Subdiretórios

Para saber mais

Créditos

CategoryExpandir

Squid (last edited 2011-09-19 23:18:55 by localhost)