====== 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 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 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