Herramientas de usuario

Herramientas del sitio


tutoriales:sarg

Instalación y configuración de SARG en Debian Squeeze

SARG (Squid Analysis Report Generator) es una herramienta que permite a los administradores de sistemas ver de una manera sencilla y amigable que sitios de Internet visitan (incluso se puede saber hasta la hora en que la visitó) los usuarios de la red local usando los logs de Squid. Genera una lista diaria, semanal, mensual o personalizada con los sitios de Internet que visita cada usuario, cuanto consumió (MB), etc. También genera una lista de los sitios más visitados (Top Sites).

Instalación y configuración

SARG no se encuentra en el repositorio usual de Squeeze, pero puede instalarse de diferentes maneras. La vía más fácil es agregando el repositorio backports. Para esto, agregamos la siguiente línea a nuestro archivo /etc/apt/sources.list:

deb http://backports.debian.org/debian-backports squeeze-backports main

Luego solo queda actualizar e instalar:

aptitude update
aptitude install sarg

Otra variante es descargar el paquete e instalarlo manualmente. Primeramente hay que verificar cuales son sus dependencias e instalarlas (libc0.1, libc0.3, libc6, libapache2-mod-php5, apache2, squid). Luego se descarga el paquete y se instala con el comando dpkg:

wget -c http://ftp.debian.org/debian/pool/main/s/sarg/sarg_2.3-2_i386.deb
dpkg -i sarg_2.3-2_i386.deb

Una vez instalado SARG, hay que configurarlo para que se generen diariamente los reportes y estadísticas. Los archivos de configuración se encuentran en /etc/sarg/. El archivo de configuración principal es /etc/sarg/sarg.conf y algunos de sus parámetros son los siguientes:

Parámetro propósito
access_log /var/log/squid/access.log Indica la ubicación del log de Squid
output_dir /var/lib/sarg Directorio donde se guardarán los reportes
exclude_hosts /etc/sarg/exclude_hosts Lista de equipos que no se incluiran en los reportes
date_format e Formato de la fecha usada en los reportes
index yes Genera una página principal index.html
topsites_num 100 Número total de sitios del TopSites
language Spanish Idioma a utilizar por defecto

El archivo /etc/sarg/exclude_users contiene los usuarios que no formarán parte de los reportes. El archivo /etc/sarg/exclude_hosts contiene los equipos que no se desea formen parte de los reportes de SARG. Pudiendo contener direcciones IP (Ejemplo: 192.168.1.10), una red completa (192.168.1.0/24), el nombre de un equipo (equipo.red.local) o todos los equipos de una red (*.red.local)

Configuración de Apache

Para poder acceder a los reportes generados por SARG es necesario configurar apache y es muy recomendable restringir el acceso a dichos reportes. A continuación se explica como hacerlo:

Se crea el archivo /etc/apache2/conf.d/sarg con el siguiente contenido:

Alias /sarg /var/lib/sarg
<Directory /var/lib/sarg>
  DirectoryIndex index.html
  order deny,allow
  deny from all
  allow from 127.0.0.1 192.168.1.10
  AuthName "Solo usuarios autorizados."
  AuthType Basic
  require valid-user
  AuthUserFile /var/www/claves-users-sarg
</Directory>

Se crea el archivo donde se almacenarán las claves, se limitan permisos de lectura y escritura sólo al dueño, y se asigna a www-data como propietario del archivo:

touch /var/www/claves-users-sarg
chmod 0600 /var/www/claves-users-sarg
chown www-data.www-data /var/www/claves-users-sarg

Se genera el usuario y se asigna el password:

htpasswd /var/www/claves-users-sarg usuario

Luego se reinicia apache para que los cambios surjan efecto:

service apache2 restart

En Squeeze hay un problema que impide que se generen los reportes diarios. El problema es que se realiza una rotación diaria de los logs de Squid y dicha rotación se realiza justo antes que Sarg genere los reportes. Es decir, el script /etc/cron.daily/logrotate se ejecuta antes que /etc/cron.daily/sarg y cuando éste último se ejecuta, el log /var/log/squid/access.log está vacío. Esto se soluciona de manera sencilla, renombrando el archivo:

mv /etc/cron.daily/sarg /etc/cron.daily/0sarg

Ahora solo hay que esperar a que pase el tiempo para que se ejecuten los scripts que se encuentran en /etc/cron.daily/ a la hora programada en /etc/crontab.

Una vez generados los reportes se accede a http://IP-del-Server/sarg/ con el usuario y la contraseña generados.

Fuente original: http://debianyderivadas.blogspot.com/2011/02/instacion-y-configuracion-de-sarg-en.html

tutoriales/sarg.txt · Última modificación: 2020/04/22 20:57 (editor externo)