Squid e Sarg: Monitorando o acesso à web na sua LAN

Squid e Sarg: Monitorando o acesso à web na sua LAN
O Squid é um servidor Proxy e cache que permite tanto compartilhar o acesso à Web com outros PCs da rede, quanto melhorar a velocidade de acesso através do cache. Mas, o Squid suporta apenas os protocolos HTTP e FTP, ou seja, não oferece acesso completo, apenas navegação (o protocolo Gopher também é suportado, o difícil é encontrar quem ainda use isto hoje em dia :-). Outros protocolos podem ser suportados, caso você manualmente abra as portas utilizadas por eles e estabeleça regras de acesso, mas isso pode ser feito mais facilmente utilizando o Nat no Iptables, que veremos mais adiante.

O Squid possui muitos recursos, incluindo autenticação de usuários, restrições de acesso, auditoria, etc. tudo o que você precisa para dar acesso à Internet para os funcionários de uma grande empresa, sem perder o controle. Apesar disso, em ambientes onde não seja necessário controlar e monitorar o que os usuários estão fazendo, simplesmente compartilhar o acesso, via Nat é muito mais fácil e eficiente. O Squid é apenas mais uma opção.

As configurações do Squid estão concentradas no arquivo /etc/squid/squid.conf. A configuração básica, necessária para o servidor funcionar é a:

# http_port 3128

… que está logo no início do arquivo. É preciso descomentar a linha (apagando o #). Se desejar também você pode alterar a porta TCP usada pelo proxy.

Você precisará também mexer nas linhas “http_access” para dar acesso aos usuários, já que o default é recusar todas as conexões. São várias linhas, que estão bem abaixo, no meio do arquivo.

# http_access deny all
http_access allow manager localhost
http_access deny manager

Se você quiser apenas liberar o acesso a todos os usuários, basta alterar a linha “# http_access deny all” para “http_access allow all” (retirando a tralha e alterando o argumento). Se você quiser dar acesso para apenas algumas máquinas substitua o “all” pelos endereços das máquinas, separados por espaços, como em:

http_access allow 192.168.0.3 192.168.0.4 192.168.0.5

Estas são apenas algumas dicas rudimentares para fazer seu servidor “funcionar”. Daqui pra frente é se aprofundar no sistema. O squid oferece um número surpreendente de recursos. Praticamente qualquer coisa que você possa imaginar já está incorporada no sistema ;-). Você pode ler um excelente tutorial de configuração do Squid, em Português, no endereço abaixo:

http://www.conectiva.com.br/suporte/pr/squid.html

A documentação oficial está disponível em:

http://www.squid-cache.org

Depois de configurado o servidor, você deverá configurar os browsers das estações para acessarem a Web através do servidor Proxy.

No IE por exemplo a configuração está em Opções da Internet > Opções > Configurações da Lan > Usar um servidor Proxy. Basta preencher os campos com o endereço IP do servidor Proxy e a porta TCP escolhida. Esta é a parte mais trabalhosa, pois a configuração precisa ser feita estação por estação, programa por programa, abrindo a porta necessária no servidor Squid e depois configurando o programa para acessar através do proxy. Como disse, se você não precisa controlar a navegação dos usuários, compartilhar via NAT é uma solução muito mais simples.

Outro alerta é que o Squid literalmente DEVORA memória RAM, já que ela é utilizada para armazenar o cache das páginas. Um servidor proxy de uma grande rede deve ter o máximo de memória RAM possível e, dependendo do número de estações, HDs em RAID (por causa da memória swap) também podem ser úteis.

Um outro uso para o Squid (especialmente útil para quem acessa via modem) é poder acessar páginas já visitadas sem precisar se conectar à Web. O Squid faz um trabalho muito melhor neste sentido do que os navegadores sozinhos.

Usando o Sarg para monitorar o acesso

O Sarg é um interpretador de logs para o Squid, assim como o Webalizer e o Apache. Sempre que executado ele cria um conjunto de páginas, divididas por dia, com uma lista de todas as máquinas que foram acessadas e a partir de cada máquina da rede veio cada acesso. Ele também mostra os usuários, caso o Squid esteja configurado para exigir autenticação.

A partir daí você pode acompanhar as páginas que estão sendo acessadas, mesmo que não exista nenhum filtro de conteúdo e tomar as medidas cabíveis em casos de abuso. Todos sabemos que os filtros de conteúdo nunca são completamente eficazes, eles sempre bloqueiam algumas páginas úteis e deixam passar muitas páginas impróprias. Se você tiver algum tempo para ir acompanhando os logs, a inspeção manual é sempre o método mais eficiente.

Aqui está um exemplo do relatório gerado pelo Sarg, mostrando os sites acessados pelo host 192.168.0.3 da rede interna. Veja que entre os dados fornecidos estão a quantidade de banda usada pelo usuário e o tempo que ele ficou em cada página:

figura1

O Sarg é incluído na maioria das distribuições atuais, em alguns casos instalado por padrão junto com o Squid.

No Debian e derivados ele pode ser instalado com um: “apt-get install sarg“. No Mandrake um “urpmi sarg” já resolve.

Depois de instalado, basta chamar o comando “sarg” (como root) para que os relatórios sejam geradas automaticamente a partir do log do squid.

O Sarg não é um daemon que fica residente, você precisa apenas chama-lo quando quiser atualizar os relatórios, se você quiser automatizar esta tarefa, pode usar o cron para que ele seja executado automaticamente todos os dias ou uma vez por hora por exemplo.

Por padrão os relatórios vão para a pasta /var/www/squid-reports/ (no Debian) ou /var/www/html/squid/ (no Mandrake).

Este padrão, junto com outras configurações podem ser alteradas no arquivo de configuração do Sarg, que é o /etc/sarg/sarg.conf (no Mandrake) ou /etc/squid/sarg.conf (no Debian). O arquivo é auto explicativo, nele você pode alterar os diretórios padrão, alterar o layout da página de relatórios e ativar recursos como o envio de uma cópia do relatório por e-mail sempre que o sarg for executado.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X