Ver Feed RSS

luandotto

Instalando e Configurando o SARG no Ubuntu

Avaliação: 5 votos, 5,00 média.
Configurando SARG no Ubuntu.
O Sarg (Squid Analysis Report Generator) é um dos mais conhecidos e utilizados geradores de relatório de acessa a internet para o proxy Squid.
O mesmo pega os dados de acesso do access.log do Squid e os transforma em relatórios mais amigáveis e de fácil interpretação. Através de seu relatório podemos ver quantidade de Bytes baixada por usuário/ip, paginas acessada, horária entre outros.
Neste post abordarei a instalação e configuração do SARG e do APACHE. O Apache é um servidor Web encarregado de mostrar os relatórios gerados.

1. Para instalar o Sarg no Ubuntu rode o seguinte comando no Terminal:
sudo apt-get install sarg


2. Vamos agora mudar o nome do arquivo original de configuração do Sarg que vem todo comentado e criar um novo contendo apenas as regras necessárias para isso rode o seguinte comando:
sudo mv /etc/sarg/sarg.conf /etc/sarg/sarg.conf.old

3. Vamos agora criar um novo arquivo de configuração limpo para isso execute o seguinte comando:
sudo touch /etc/sarg/sarg.conf

4. Com o novo arquivo de configuração criado vamos agora colar as configurações necessárias para que o Sarg rode corretamente para isso abra o sarg.conf com o editor:
sudo editor /etc/sarg/sarg.conf

E cole o seguinte código:

Código :
# Script para configuração do Sarg [sarg.conf]
  # Desenvolvido por Luan Dotto
 
  # TAG: Linguagem
  language Portuguese
 
  # TAG: Caminho para o arquivo Access.log
  access_log /var/log/squid/access.log
 
  # TAG: Graficos
  graphs yes
  graph_days_bytes_bar_color green
 
 
  # TAG:itulos relatorios
  title "[Relorio 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: Temporarios
  temporary_dir /tmp
 
  # TAG: Diretotio de Saida [B](Modifique de acordo com sua necessidade)[/B]
  output_dir /var/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/sarg/sarg.hosts
 
  # TAG: Filtragem de Strings
  #exclude_string /etc/sarg/sarg.strings
 
  # TAG: Filtragem de Usuarios
  exclude_users /etc/sarg/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 Usuario
  usertab /etc/squid/sarg.usertab
 
  # TAG: Gerando Relatorios
  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/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,rar,docx,xlsx,pptx,pdf,mp4,mkv"

OBS – Para que não ocorram erros na execução do Sarg deve-se verificar se os diretórios do código acima se estão de acordo com a sua estrutura ou distribuição. Deve-se verificar também se os arquivos mencionados existem. Caso não existam ou estejam localizados em local diferente deve-se alterar o código de acordo com a sua realidade.

5. Pronto, estamos com o Sarg devidamente configurado vamos agora instalar o Apache que ira nos possibilitar acessar os relatórios de acesso à internet via Browser. Para isso execute o seguinte comando:
sudo apt-get install apache2

6. Vamos agora fazer um teste gerando um relatório do Sarg manualmente através do comando:
sudo sarg -f /etc/sarg/sarg.conf -d 01/07/2012-18/07/2012 -p -x –z

O comando acima esta informando ao Sarg que deve-se ser gerado o ralatorio de acesso a internet do dia 01/07/2012 ao dia 18/07/2012. Altere de acordo sua necessidade.
7. Para acessar o relatório gerado abra o browser de sua preferencia e digite:
ip_servidor/sarg

8. Note que foi gerado o relatório por IP caso queira que apareça o nome do usuário no lugar do IP edite o arquido sarg.usertab que esta localizado em /etc/sarg. Caso o mesmo não exista não se preocupe basta cria-lo com o comando:
touch /etc/sarg/sarg.usertab

9. Com o arquivo criado vamos agora edita-lo para isso cole o ip da maquina seguido do nome do usuário conforme mostrado abaixo:

11.0.0.1 DT-CPD
11.0.0.2 NT-INFRA
11.0.0.3 DT-DADOS
11.0.0.4 DT-AV
11.0.0.5 DT-SV31
11.0.0.6 NT-STM
11.0.0.7 DT-BALCAO
11.0.0.8 NT-GV
11.0.0.9 DT-SV32
11.0.0.10 DT-CONF
11.0.0.11 DT-GAF
11.0.0.12 DT-GOD
11.0.0.13 DT-FINANCEIRO
11.0.0.14 DT-FAT1
#

OBS – Note que no final do modelo mostrado a cima tem o # no final no seu arquivo o mesmo também deve existir.


10. Vamos agora fazer com que os relatórios do Sarg sejam gerados automaticamente para isso vamos criar um script.
O primeiro passo é criar o arquivo que ira conter esse script para isso execute o comando:
touch /etc/sarg/sargDiario.sh

11. Agora vamos dar permissão ao arquivo criado através do comando:
chmod 777 /etc/sarg/sargRelatorio.sh

12. Agora cole o seguinte script dentro do arquivo criado para que o relatorio seja gerado DIARIAMENTE:

#!/bin/bash

INICIO=$(date --date "0 days ago" +%d/%m/%Y)
FIM=$(date --date "0 day ago " +%d/%m/%Y)
sarg -f /etc/sarg/sarg.conf -d $INICIO-$FIM -p -x –z

13. Caso queira que o relatorio seja gerado SEMANALMENTE cole o script:

#!/bin/bash

INICIO=$(date --date "7 days ago" +%d/%m/%Y)
FIM=$(date --date "0 day ago " +%d/%m/%Y)
sarg -f /etc/sarg/sarg.conf -d $INICIO-$FIM -p -x –z

14. Caso queira que o relatório seja gerado MENSALMENTE cole o script:

#!/bin/bash

INICIO=$(date --date "31 days ago" +%d/%m/%Y)
FIM=$(date --date "0 day ago " +%d/%m/%Y)
sarg -f /etc/sarg/sarg.conf -d $INICIO-$FIM -p -x –z

15. Vamos agora agendar no crontab a execução automática destes relatórios. Para isso execute o comando:
crontab -e

Cole dentro do crontab vamos utilizar os seguintes parâmetros:

Primeiro para SARG GERANDO RELATÓRIOS DIÁRIOS:
00 00 * * * root /etc/sarg/sargRelatorio.sh

O Sarg entrará em funcionamento à meia-noite do todos os dias.

Para SARG GERANDO RELATÓRIOS SEMANAIS:

00 00 * * 5 root /etc/sarg/sargRelatorio.sh

O Sarg entrará em funcionamento à meia-noite de sexta-feira.

Altere o último número para modificar o dia conforme necessário (0-Domingo, 1-Segunda e assim por diante).

Para SARG GERANDO RELATÓRIOS MENSAIS (Agende conforme o mês em que se encontra):

00 00 31 * * root /etc/sarg/sargRelatorio.sh

O Sarg entrará em funcionamento à meia-noite do dia 31 de cada mês.

00 00 30 * * root //etc/sarg/sargRelatorio.sh


O Sarg entrará em funcionamento à meia-noite do dia 30 de cada mês.

00 00 29 * * root /etc/sarg/sargRelatorio.sh


O Sarg entrará em funcionamento à meia-noite do dia 29 de cada mês (para mês de Fevereiro).

00 00 28 * * root /etc/sarg/sargRelatorio.sh

O Sarg entrará em funcionamento à meia-noite do dia 28 de cada mês (para mês de Fevereiro).
Categorias
Artigos

Comentários

  1. Avatar de Wiltec
    Artigo excelente, sou usuário recente em Linux e conseguí gerar os relatórios com seu tutorial, porém estou com problemas com a conversão dos IPs em nomes personalizados conforme o arquivo sarg.usertab, fiz todos os passos conforme informados, mas não funcionou, o que pode ser ?
    Uso o Debian 6 em modo terminal.
    Desde já agradeço !
  2. Avatar de shimatani
    Olá, boa tarde. Eu gostaria de saber como faço para fazer rodar os relatorios em 60 segundos.

    Desde já agradeço.

+ Enviar Comentário