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.
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
me carga la pagina de
Debian Logo Apache2 Debian Default Page
no se pq?
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:87.0) Gecko/20100101 Firefox/87.0
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;
…
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
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
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0
lo estoy probando en ubuntu 18.04 y no genera el fichero index.html
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0
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
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36
Tienes toda la razón, ya fue arreglado. Disculpen la demora, mucho trabajo por acá, saludos.
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0
Muchas gracias Ariàn. Esperaba este tuto en nginx, pues ya lo tenìa claro en Apache.
SL2
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
La verdad era muy sencillo, ya que son ficheros estáticos lo que genera SquidAnalyzer.