Categorías: MonitoreoProxyRedesWeb

SquidAnalyzer esta vez con nginx

Como parte de la serie de tutoriales recientes sobre Squid Cache, nos dimos la tarea de explicar los diferentes analizadores y generadores de estadísticas de logs (trazas). Los cual podemos utilizar para hacer mucho mas cómodo el trabajo de monitoreo.

En este post veremos a SquidAnalyzer como solución de analizador de trazas, y nginx para servidor web que publicara los reportes generados.

Requisitos:

  • Servidor con squid ya instalado (ver como hacer aquí)

    Nota: para este tutorial se uso una instalación de Squid4 instalado en un contenedor de proxmox de Debian10

  • Tener descargado el fichero para instalar SquidAnalyzer (squidanalyzer-6.6.tar)

Pasamos primeramente a instalar SquidAnalyzer, extraemos el fichero descargado y luego acedemos a la carpeta obtenida:

root@srv-squid:/home# tar xvf squidanalyzer-6.6.tar.gz 
root@srv-squid:/home# cd squidanalyzer-6.6/

Creamos la carpeta donde estarán los ficheros que se van a generar

mkdir /var/www/squidanalyzer

Ahora pasamos a la instalación donde tenemos 2 variantes, una que personaliza la instalación (recomiendo copiar el contenido, editarlo y luego pegarlo en la consola). Así me quedo a mi:

root@srv-squid:/home/squidanalyzer-6.6# perl Makefile.PL \
   LOGFILE=/var/log/squid/access.log \
   BINDIR=/usr/bin \
   CONFDIR=/etc \
   HTMLDIR=/var/www/squidanalyzer \
   BASEURL=/ \
   MANDIR=/usr/man/man3 \
   DOCDIR=/usr/share/doc/squidanalyzer
root@srv-squid:/home/squidanalyzer-6.6# make
root@srv-squid:/home/squidanalyzer-6.6# make install

La otra variante más fácil es la genérica, pero luego deberás editar los parámetros en /etc/squidanalyzer/squidanalyzer.conf, y como se hace sencillo:

root@srv-squid:/home/squidanalyzer-6.6# perl Makefile.PL 
root@srv-squid:/home/squidanalyzer-6.6# make 
root@srv-squid:/home/squidanalyzer-6.6# make isntall

Por último pasamos a agregar esta línea en el cron, recuerden crontab -e:

0 2 * * * /usr/local/bin/squid-analyzer > /dev/null 2>&1

Esto significa que cada 2 horas genera las estadísticas de las trazas, recomiendo para estar seguro que se generan los ficheros correr el comando luego de salvar el cron.

root@srv-squid:/home/squidanalyzer-6.6# /usr/local/bin/squid-analyzer > /dev/null 2>&1

comprobamos:

ls -la /var/www/squidanalyzer/

si nos sale algo como esto, todo ha salido bien:

total 168
drwxr-xr-x  4 root root   4096 May  9 01:20 .
drwxr-xr-x  3 root root   4096 May  9 01:16 ..
drwxr-xr-x 18 root root   4096 Jul 22 02:00 2020
-rwxr-xr-x  1 root root 114124 May  7  2017 flotr2.js
drwxr-xr-x  2 root root   4096 May  9 01:10 images
-rwxr-xr-x  1 root root   2715 Jul 22 02:00 index.html
-rwxr-xr-x  1 root root   1039 May  7  2017 sa-sorttable.diff
-rwxr-xr-x  1 root root   8465 May  7  2017 sorttable.js
-rwxr-xr-x  1 root root   7641 May  7  2017 squidanalyzer.css
-rwxr-xr-x  1 root root     19 Jul 22 02:00 SquidAnalyzer.current
-rwxr-xr-x  1 root root   3103 May  7  2017 squidanalyzer.js
-rwxr-xr-x  1 root root   1860 May  7  2017 update_rsc_files.sh

Una vez terminado la parte de SquidAnalyzer procedemos a instalar nginx.

root@srv-squid:~# apt install -y nginx

es tan sencillo como editar el fichero de configuración del vhost de nginx y poner la ruta donde están los ficheros estáticos que genero el SquidAnalyzer:

para los que no recuerden la ruta de la configuración del vhost de nginx en debian/ubuntu es /etc/nginx/sites-available/default.conf(si instalas del repo oficial de nginx o usas otra distro, la ruta sera/etc/nginx/conf.d/)

server {
   listen       80;
   server_name  proxy.domain.cu;

   access_log  /var/log/nginx/squidanalyzer-access.log  main;

   location / {
       root   /var/www/squidanalyzer;
       index  index.html index.htm;
   }
}

probamos la configuración  y si todo a salido bien reiniciamos nginx:

root@srv-squid:~# nginx -t
root@srv-squid:~# systemctl restart nginx

Por último pero no menos importante accedemos desde nuestro navegador a la URL del SquidAnalyzer y nos debe salir así:

Una muestra de como se ve el apartado TOP DOMAINS

Y listo, eso es todo.

¿De cuánta utilidad te ha parecido este contenido?

Arian López Delgado

Sysadmin freelance, usuario de GNU/Linux desde 2009

Ver comentarios

    • ya resolví!!!
      ...reemplace el:
      /etc/nginx/sites-available/default
      por
      /etc/nginx/sites-available/default.conf
      y elimine la palabra main de:
      ...
      access_log /var/log/nginx/squidanalyzer-access.log main;
      ...

  • ES LA 4ta VEZ QUE LO HAGO Y SIEMPRE SALE ASI!!!!

    *************************************
    root@proxy:/opt/squidanalyzer-6.6# /usr/local/bin/squid-analyzer > /dev/null 2>&1
    root@proxy:/opt/squidanalyzer-6.6# ls -la /var/www/squidanalyzer/
    total 144
    drwxr-xr-x 3 root root 4096 Mar 17 14:12 .
    drwxr-xr-x 4 root root 4096 Mar 17 14:11 ..
    -rw-r--r-- 1 root root 114124 Mar 17 14:12 flotr2.js
    drwxr-xr-x 2 root root 4096 Mar 17 14:12 images
    -rw-r--r-- 1 root root 8465 Mar 17 14:12 sorttable.js
    -rw-r--r-- 1 root root 7641 Mar 17 14:12 squidanalyzer.css

    PUEDES DECIRME QUE OCURRE????
    ME FALTA EL INDEX.HTML Y LA CARPETA 2020
    DETALLE
    DEBIAN 10.8 CONTENEDOR EN PROXMOX

    • Tal vez es porque hay un error en el tutorial, donde se dice que se creará el subdirectorio /var/www/squidanalyzer ("Creamos la carpeta donde estarán los ficheros que se van a generar"), pero al ejecutar la instalación se refiere a HTMLDIR=/var/www/squidreport

      • Tienes toda la razón, ya fue arreglado. Disculpen la demora, mucho trabajo por acá, saludos.

Compartir
Publicado por
Arian López Delgado

Entradas recientes

Alta disponibilidad de sus base de datos con Percona XtraDB Cluster en Kubernetes

Uno de los grandes retos al que nos podemos enfrentar cuando una aplicación crece, es…

8 meses hace

Home automation (Parte 3) – ESPHome

Qué es lo que deseo hacer en este capítulo? Básicamente un sonoff, quiero encender/apagar las…

1 año hace

Home automation (Parte 2) – Home Assistant

Hace algunos meses estoy escuchando hablar del proyecto Home Assistant (HA). En palabras literales del…

1 año hace

Home automation (Parte 1)

Desde hace varios meses vengo con la idea de automatizar la casa donde vivo. Poco…

1 año hace

Cocinando una imagen personalizada de OpenWRT

El artículo describe el uso para un caso particular de OpenWRT y la creación de…

1 año hace