Arquivo

Arquivo de janeiro, 2008

Instalação e Configuração do SARG

22, janeiro, 2008 Rafael Sem comentários

Considerando que o SQUID ja foi instalado corretamente vamos instalar o sarg no slackware.

Pegue o tgz em www.linuxpackages.net e instale-lo com o comando installpkg

Após o processo de instalação, o principal arquivo de configuração denominado
‘sarg.conf’ poderá ser localizado no diretório: /etc/sargLocalize-o e modifique seu nome para ‘sarg.conf.old’:# mv sarg.conf sarg.conf.old

Apenas para efeitos de backup, pois é sempre bom se ter o arquivo original em
reserva para eventuais problemas que possam surgir.

Crie o seu próprio ‘sarg.conf’:

# touch sarg.conf

Edite o arquivo utilizando o seu editor de preferência (no meu caso o mcedit) e
adicione o conteúdo abaixo ao mesmo:

# Script para configuração do Sarg [sarg.conf]
# Desenvolvido por Júnior Jones de Menezes
# TAG: Linguagem
language Portuguese# TAG: Caminho para o arquivo Access.log
access_log /etc/squid/access.log# TAG: Gráficos
graphs yes
graph_days_bytes_bar_color green

# TAG: Título do Relatório
title “[Relatório de Acessos a Internet]”

# TAG: Visual
font_face Arial
header_color #666666
header_bgcolor #EEEEEE
header_font_size 9px
title_font_size 11px
background_color #FFFFFF
text_color #666666
text_bgcolor #FFFFFF
title_color #009999
#logo_image none
#logo_text “”
#logo_text_color #000000
#image_size 80 45
#background_image none

# TAG: Temporários
temporary_dir /tmp

# TAG: Diretório de Saída (Modifique de acordo com sua necessidade)
output_dir /home/ftp/www/sarg

# TAG: Top Users
topuser_sort_field BYTES reverse
user_sort_field BYTES reverse

# TAG: URL Excluídas do Relatório
exclude_hosts /etc/squid/sarg.hosts

# TAG: Filtragem de Strings
exclude_string /etc/squid/sarg.strings

# TAG: Filtragem de Usuários
exclude_users /etc/squid/sarg.users

# TAG: Formato de Data
date_format e

# TAG: Limite de Logs [0 = Sem limites]
lastlog 0

# TAG: Mostrar IP
user_ip no

# TAG: Mostrar Usuário
usertab /etc/squid/sarg.usertab

# TAG: Gerando Relatório
remove_temp_files yes
index yes
overwrite_report yes
records_without_userid ignore
use_comma no
topsites_num 100
topsites_sort_order BYTES D
exclude_codes /etc/squid/sarg.exclude_codes
max_elapsed 28800000
report_typie topsites users_sites sites_users date_time denied auth_failures site_user_time_date
long_url no
show_successful_message no
topuser_fields NUM DATE_TIME USERID CONNECT BYTES %BYTES IN-CACHE-OUT USED_TIME MILISEC %TIME TOTAL AVERAGE
topuser_num 0
download_suffix “zip,arj,bzip,gz,ace,doc,iso,adt,bin,cab,com,dot,drv$,lha,lzh,mdb,mso,ppt,rtf,src,shs,sys,exe,dll,mp3,avi,mpg,mpeg”

Algumas TAGs podem ser modificadas sem maiores problemas, pois tratam-se apenas de formatação dos relatórios, outras tratam-se dos caminhos de arquivos importantes ao bom funcionamento do Sarg e o restante diz respeito a forma que o mesmo vai funcionar, por isso, é de alta importância uma revisão com fins de verificar se existe alguma discrepância entre os dados do sarg.conf aqui sugerido e as características de seu servidor.As TAGs apresentadas abaixo, são exatamente as que indicarão ao Sarg que nos relatórios gerados por ele, deverá aparecer ao invés do endereço IP, o nome do usuário ou Máquina devidamente setado por você.
# TAG: Mostrar IP
user_ip no# TAG: Mostrar Usuário
usertab /etc/squid/sarg.usertab
Logo após o arquivo criado e salvo, procure no mesmo diretório (/etc/squid) um arquivo denominado ‘sarg.usertab’, se ele não existir, fique calmo (hehehe), crie-o você mesmo. Este arquivo será altamente importante para que nosso trabalho tenha o devido sucesso. É nele que o administrador irá setar os IPs das máquinas e o nome equivalente as mesmas. O conteúdo a ser adicionado no mesmo é exemplificado abaixo, sendo mudado de acordo com sua rede.Exemplo:192.168.0.2 Linus
192.168.0.3 Torvalds
192.168.0.4 Departamento do LinuxEsta é a forma correta do arquivo, qualquer outra forma, não dará o resultado esperado. Na ÚLTIMA LINHA do arquivo ‘sarg.usertab’ adicione o caractere ‘#’

Como visto acima, é o ‘sarg.usertab’ que possibilita ao Sarg mostrar nomes amigáveis ao invés de endereços IPs, fator muito útil em redes de grande porte e não menos importante em pequenas redes.

MRTG sem SNMP: monitoramento simplificado

22, janeiro, 2008 Rafael 2 comentários

MRTG
O MRTG (www.mrtg.org) é um software livre que facilita enormemente a tarefa de acompanhar o funcionamento do seu sistema. Embora o seu foco seja o acompanhamento de componentes de rede através do protocolo SNMP, você pode muito bem utilizar este software para verificar o funcionamento do seu computador doméstico ou estação de trabalho mesmo sem instalar o suporte a SNMP – basta usar a sua interface com scripts shell.
O site do MRTG tem muitos exemplos de como monitorar roteadores e outros equipamentos de rede com suporte a SNMP, mas muita gente procura informações sobre a interface do MRTG com programas externos, sem precisar de protocolos especializados em monitoramento nem de alterações na configuração de seus equipamentos. E isso se explica pela simplicidade com que é possível construir um script de monitoramento de qualquer coisa (uso de banda de rede, uso do disco, quantidade de usuários conectados a um sistema, etc.) e integrá-lo ao MRTG.

Nesta dica irei mostrar em 2 passos como instalar e configurar o mrtg no slackware.

Primeiro va até www.linuxpackages.net e procure por mrtg e baixe-o.

Feito isso instale com o comando installpkg
# installpkg mrtg-2.15.2-i486-1gds.tgz

Agora crie uma pasta no seu home ou em qualquer outro local de preferencia com o nome mrtg pois lá é onde vão ficar as confs do mrtg

# mkdir /home/mrtg

Feito isso crie agora uma pasta onde iram ficar os gráficos gerados pelo mrtg e as paginas em html

#mkdir /home/mrtg/relatorios

Feito isso agora vamos crias os scrips de monitoramento do mrtg

O script abaixo, bastante simples, extrai dados sobre o tráfego na interface passada como parâmetro no momento de sua execução (exemplo: ppp0, eth0…). Grave-o com o nome de mrtgstats-net.sh, e torne-o executável com o comando chmod 755 /home/brain/mrtg/mrtgstats-net.sh


#!/bin/sh
# mrtgstats-net.sh - Augusto Campos 2004
awk '
/'$1':/ {
$0=substr($0,index($0,":")+1);
print $1;print $9
}
' /proc/net/dev

Este segundo script extrai informações sobre a carga da CPU e o uso da memória, transforma em percentual e repassa ao MRTG. Grave-o com o nome de mrtgstats-cpu.sh, e torne-o executável com o comando chmod 755 /home/brain/mrtg/mrtgstats-cpu.sh


#!/bin/sh
unset LANG
mem=$(/usr/bin/free|grep ^-)
load=$(cat /proc/loadavg)
/bin/awk -v load="$load" -v mem="$mem" '
BEGIN {
split(load,loadstats)
print int(100*loadstats[2])
split(mem,memstats);
print int(100*memstats[3]/(memstats[3]+\
memstats[4]));
}'

Agora, trate de criar um arquivo de configuração para o MRTG, e grave-o com o nome de mrtg.conf:


WorkDir: /home/brain/mrtg

Target[ppp0]: `/home/brain/mrtg/mrtgstats-net.sh ppp0`
Title[ppp0]:"Tráfego no modem - ppp0"
MaxBytes[ppp0]:75000
PageTop[ppp0]: <h1>Tráfego de dados no modem local</h1>
Options[ppp0]: growright,bits,noinfo

Target[eth0]: `/home/brain/mrtg/mrtgstats-net.sh eth0`
Title[eth0]:"Tráfego na placa de rede - eth0"
MaxBytes[eth0]:1400000
PageTop[eth0]: <h1>Tráfego de dados na placa de rede</h1>
Options[eth0]: growright,bits,noinfo

Target[perf]:`/home/brain/mrtg/mrtgstats-cpu.sh`
Title[perf]:"Carga da CPU e Uso da Memória"
PageTop[perf]:"<h1>Carga da CPU e Uso da Memória</h1>"
Options[perf]: growright,noinfo,gauge
YLegend[perf]: Percentual
ShortLegend[perf]: %
MaxBytes[perf]: 100
Legend1[perf]: Carga da CPU
Legend2[perf]: Uso da memória real
LegendI[perf]: Carga
LegendO[perf]: Mem

Para testar o MRTG manualmente, basta executá-lo passando como parâmetro o caminho completo do seu arquivo de configuração, assim: mrtg /home/brain/mrtg/mrtg.conf

Tudo está pronto! Agora inclua na sua crontab a linha para executar o MRTG a cada 5 minutos, passando como parâmetro o nome do arquivo de configuração que você criou, conforme o exemplo:


*/5 * * * * /usr/bin/mrtg /home/brain/mrtg/mrtg.conf

Após 5 minutos você poderá ver o início dos seus gráficos se formando nos arquivos em formato html que serão criados no diretório /home/brain/mrtg. Antes de 5 minutos, os dados aparecerão zerados, mesmo que você execute várias vezes o mrtg manualmente – isto é uma consequência do modo como ele calcula suas estatísticas.

Conclusão

Com estes exemplos você poderá monitorar alguns aspectos importantes do seu sistema, e quem sabe se inspirar para criar scripts que monitorem outros itens. Para saber mais detalhes sobre o MRTG, não deixe de vistar o site oficial da ferramenta.

Navigation »