Squid

Differences between revisions 26 and 57 (spanning 31 versions)
Revision 26 as of 2007-07-05 01:49:56
Size: 2422
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 altissimo desempenho que suporta os protocolos HTTP, HTTPS,FTP, TLS, SSL. Reduz o uso da banda e melhora tempos de resposta de paginas solicitadas que estão em cache. O Squid tem um grande controles de ACLS sendo muito flexivel.Ele aumenta a velocidade de entrega da pagina solicitada ao cliente. Funciona em Linux,Unix e em Windows e é 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:
== Instalação básica e modo transparente == Ao final deste documento saberemos como instalar e configurar basicamente um servidor proxy Squid, e como faze-lo funcionar como proxy transparente.
Line 9: Line 10:
== Instalando o Squid == == Instalando e Configurando ==
=== Instalando o Squid ===
Instalando os pacotes necessários
Line 12: Line 15:
  sudo aptitude install squid squid-common
}}}
sudo aptitude install squid squid-common}}}
Line 19: Line 20:
sudo dpkg -l |grep squid
}}}

== Configuração básica do Squid ==
sudo dpkg -l |grep squid}}}
Line 25: Line 23:
cd /etc/squid sudo dpkg -l |grep squid
squid-common 2.6.5-4ubuntu2 Internet Object Cache (WWW proxy cache)}}}
Line 27: Line 26:
sudo cp squid.conf squid.conf.sample
}}}
=== Configuração básica do Squid ===
{{{
cd /etc/squid}}}
Line 30: Line 30:
{{{
sudo cp squid.conf squid.conf.sample}}}
Line 34: Line 36:
sudo vim /etc/squid/squid.conf
}}}
sudo vim /etc/squid/squid.conf}}}
Line 38: Line 40:
http_port 3128. Porta padrão onde o squid vai escutar as solicitações. Porta padrão onde o squid vai escutar as solicitações
http_port 3128
.                   
Line 40: Line 43:
visible_hostname nomedohost. Nome do host em rede, para exibição em possiveis erros nas solicitações dos clientes. Nome do host em rede, para exibição em possíveis erros nas solicitações dos clientes.

visible_hostname nomedohost.
Line 44: Line 49:
"Isso vai fazer que quando o Squid ler o arquivo squid.conf ele apresente o nome do servidor definido na opção visible_hostname" "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"
Line 53: Line 58:

== Iniciando o Squid ==
=== 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 57: Line 62:
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 }}}
sudo squid -z}}}
Line 64: Line 68:
 * Starting Squid HTTP proxy squid [ OK ]  }}}  * Starting Squid HTTP proxy squid [ OK ]}}}
Line 70: Line 73:
sudo netstat -nlt
Line 71: Line 75:
 netstat -nlt
Line 75: 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 77: Line 80:

}}}

A saida deve ser algo como isso dependendo dos serviços que estão rodando em sua máquina.
A saida deve ser algo como isso, dependendo dos serviços que estão rodando em sua máquina.
Line 89: Line 89:
onde 10.109.0.1 é o ip do servidor proxy e 3128 a porta do squid. onde 10.0.0.1 é o ip do servidor proxy e 3128 a porta do squid.
Line 91: Line 91:
=== Proxy Transparente ===
Agora precisamos adicionar a seguinte regra no Iptables, isso ira redirecionar o tráfego da porta 80 para a porta 3128
Line 92: Line 94:
{{{
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 }}}
Line 93: Line 97:
== 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 94: Line 103:
=== Dica do dia ===
Monitoramento o acesso dos usuários de forma simples e tempo real
Line 95: Line 106:
{{{
sudo tail -f /var/log/access.log | grep " IP da máquina que se quer monitorar"}}}
Line 96: Line 109:
Ex:
{{{
sudo tail -f /var/log/access.log | grep " 10.0.0.1"}}}
Line 97: Line 113:
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 98: Line 115:
  === 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>>
como no exemplo : /var/spool/squid 100 16 256

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

=== Para saber mais ===

 * [[http://www.squid-cache.org/|Squid Web Proxy Cache]]

=== 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]] ||

CategoryExpandir

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)