Squid
Contents |
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ÇAA 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
Wikifiers: RodrigoPacheco |
Data: 09/07/2007 |
Mantenedor: RodrigoPacheco |
|
Squid (last edited 2011-09-19 23:18:55 by localhost)