En el mundo de la administración de servidores web, analizar los registros de acceso es una tarea crítica que puede proporcionar información valiosa sobre el tráfico, errores comunes, y mucho más. Para los usuarios de Plesk, un script de Bash puede automatizar y simplificar este proceso. A continuación, presentamos un script eficiente y su aplicación práctica.
El Script de Bash para análisis de logs
Este script está diseñado para analizar los archivos de registro de acceso SSL procesados en un servidor Plesk. A continuación, se detalla el código y su funcionamiento:
#!/bin/bash
LOG_PATH="/var/www/vhosts/*/logs/access_ssl_log.processed.1.gz"
for logfile in $LOG_PATH; do
echo "Analizando $logfile"
echo "Dirección IP"
zcat "$logfile" | awk '{print $1}' | sort | uniq -c | sort -nr | head
echo "404"
zcat "$logfile" | awk '$9 == 404' | awk '{print $7}' | sort | uniq -c | sort -nr | head
echo "user agents comunes"
zcat "$logfile" | awk -F\" '{print $6}' | sort | uniq -c | sort -nr | head
echo "urls comunes"
zcat "$logfile" | awk '{print $7}' | sort | uniq -c | sort -nr | head
echo "solicitudes post"
zcat "$logfile" | awk '$6 == "POST" {print $7}' | sort | uniq -c | sort -nr
done
Funcionamiento del Script
El script busca archivos de registro en la ruta especificada y realiza varias operaciones de análisis en cada uno de ellos:
- Direcciones IP: Enumera las direcciones IP más frecuentes que acceden al sitio.
- Errores 404: Identifica las URL más comunes que resultan en un error 404.
- Agentes de Usuario Comunes: Muestra los agentes de usuario (user agents) más frecuentes que visitan el sitio.
- URLs Comunes: Enumera las URLs más solicitadas.
- Solicitudes POST: Enumera las solicitudes POST más comunes.
Al utilizar este script en varios sitios, se pueden observar patrones interesantes, como:
- Tráfico Elevado de Amazonbot: Esto puede indicar un scraping intensivo o una indexación por parte de Amazon.
- Tráfico Significativo del Bot de Capturas de Pantalla de Plesk: Un comportamiento esperado, pero que debe ser monitoreado para evitar un uso excesivo de recursos.
- Alto Tráfico de WP Rocket/Preload: Aunque esto indica una actividad de pre-carga de páginas, es crucial asegurarse de que está optimizando el rendimiento sin sobrecargar el servidor.
- Errores 404 Comunes en /.well-known/traffic-advice: Esto puede indicar intentos de acceso a una ubicación común para consejos de tráfico o un malentendido en la configuración del servidor.
Personalización y flexibilidad
El script puede ser fácilmente modificado para adaptarse a diferentes tipos de archivos de registro o para incluir análisis más específicos según las necesidades. Por ejemplo, se puede cambiar la ruta del archivo de registro o agregar más filtros y comandos awk
para obtener información más detallada.
En resumen, este script de Bash es una herramienta invaluable para los administradores de sistemas que utilizan Plesk, proporcionando una forma rápida y automatizada de obtener información crucial de los archivos de registro. Su simplicidad y flexibilidad lo hacen adecuado tanto para entornos de producción como para diagnósticos rápidos, asegurando que los administradores estén siempre al tanto del estado y la salud de sus servidores.