Este artículo explica cómo instalar Logwatch en Debian y derivados de forma correcta (sin modificar archivos de configuración dentro de /usr/share/logwatch).

Logwatch es un script de monitoreo de logs personalizable escrito en Perl. Se utiliza para examinar los logs de un sistema en un período de tiempo determinado (generalmente diario) y elaborar un resumen con el nivel de detalle que se desee. Es capaz de enviar el resumen por mail en forma de reporte en formato HTML o texto plano. Es muy útil para monitorear la actividad de los servidores y detectar posibles abusos, intentos de intrusión, consumo de recursos, y estadísticas de acceso.

Para comenzar, instalar Logwatch desde paquete de Debian (logwatch):

# apt-get install logwatch

Luego configurar Logwatch creando un archivo de override de configuraciones dentro de /etc/logwatch/conf/:

# nano /etc/logwatch/conf/override.conf

Si deseamos recibir un resúmen de logs por correo una vez al día en formato HTML y con detalle alto (el nivel de detalle va del 1 al 10, siendo 10 el más alto), definir las siguientes reglas:

logwatch: MailTo = root admin@linuxito.com
logwatch: Format = html
logwatch: Detail = 10

Notar que al ser overrides, todas las líneas de configuración se preceden con "logwatch:". Esto se debe a que es posible sobrescribir configuraciones generales del demonio, de archivos de logs, o de servicios.

Verificar el funcionamiento ejecutando logwatch:

# logwatch --output mail

Se debe recibir un correo con el reporte de logs del sistema.

La página de manual de Logwatch (man logwatch) no es de gran ayuda, sino que se debe recurrir al HOWTO que se encuentra en el directorio /usr/share/doc/logwatch/:

# zless /usr/share/doc/logwatch/HOWTO-Customize-LogWatch.gz
HOWTO-Customize-LogWatch
================================================================================

1. Table of Contents
====================

  1. Table of Contents
  2. Introduction
  3. Directory Structure
    A. Configuration Structure
    B. Executable Structure
  4. Customizing the Configuration
  5. Customizing the Scripts
  6. Creating New Service Filters
    A. Logfile Groups
    B. Service Filter Configuration
    C. Service Filer Executable
    D. Shared Script Commands
    E. Environment Information
  7. For More Information




This document describes the structure of the Logwatch files in the
distribution, how to modify the configuration files for your
system, and how to create new service filters.

2. Introduction
===============

Por último, el script de envío del resumen diario se encuentra dentro del directorio /etc/cron.daily de cron:

root@debian:~# cat /etc/cron.daily/00logwatch 
#!/bin/bash

#Check if removed-but-not-purged
test -x /usr/share/logwatch/scripts/logwatch.pl || exit 0

#execute
/usr/sbin/logwatch --output mail

#Note: It's possible to force the recipient in above command
#Just pass --mailto address@a.com instead of --output mail

Compartí este artículo