Ir al contenido

Monitoreo de servidor de correo con Lightmeter

Lightmeter es una herramienta de monitoreo de servidores de correo autoalojados de código abierto, para que puedas saber lo que está pasando con tu servidor de correo.

Características de Lightmeter

  • Interfaz web fácil de usar
  • Monitorización del tiempo de inactividad del servidor de correo
  • Monitorización RBL (Listas de Bloqueo en Tiempo Real)
  • Detección en tiempo real de correos bloqueados por otros servidores SMTP como Gmail y Microsoft
  • Notificaciones de advertencia instantáneas por correo electrónico y Slack
  • Protección automática contra Botnet y ataques de fuerza bruta
  • Admite archivos de registro locales y remotos

Es básicamente una versión avanzada de pflogsumm con una interfaz web.

Requisitos

Se asume que tienes un servidor de correo en funcionamiento.

Ten en cuenta que sólo es compatible con el servidor SMTP Postfix.

Paso 1: Instalar el binario Lightmeter

Descarga la última versión estable de Lightmeter (1.9.1 en el momento de escribir esto). Puedes consultar su repositorio en GitLab para averiguar cuál es la última versión.

wget https://gitlab.com/api/v4/projects/17017123/packages/generic/lightmeter/1.9.1/lightmeter-linux_amd64-1.9.1

Moverlo al directorio /usr/local/bin/.

mv lightmeter-linux_amd64-1.9.1 /usr/local/bin/lightmeter

Agregamos permiso de ejecución.

chmod +x /usr/local/bin/lightmeter

Agregamos un usuario lightmeter.

useradd lightmeter --create-home --home-dir /var/lib/lightmeter_workspace --system

Ejecutamos Lightmeter con el usuario creado.

sudo -u lightmeter /usr/local/bin/lightmeter -watch_dir /var/log

Ahora puedes visitar la interfaz web de Lightmeter.

http://ip-de-tu-servidor:8080

Se te pedirá que crees una cuenta de administrador. Antes de hacerlo, vamos a crear un servicio systemd para Lightmeter y habilitar HTTPS.

Paso 2: Creación del Servicio Systemd

Presiona Ctrl+C para detener el proceso actual de Lightmeter. A continuación crea una unidad de servicio systemd para Lightmeter.

nano /etc/systemd/system/lightmeter.service

Pon el siguiente texto en el archivo.

[Unit]
Description=Mail Server Monitoring
After=network.target

[Service]
Type=simple
ExecStartPre=/bin/bash -c '/usr/bin/setfacl -R -m u:lightmeter:rx /var/log/mail*'
ExecStart=sudo -u lightmeter usr/local/bin/lightmeter -watch_dir /var/log/
ExecStop=sudo -u lightmeter /usr/bin/pkill /usr/local/bin/lightmeter
Restart=always
SyslogIdentifier=Lightmeter

[Install]
WantedBy=multi-user.target

Presiona Ctrl+O, luego Enterpara guardar el archivo. Presiona Ctrl+X para salir. Luego recarga systemd.

systemctl daemon-reload

Inicia Lightmeter.

systemctl start lightmeter.service

Activa el arranque automático.

systemctl enable lightmeter.service

Comprueba su estado:

systemctl status lightmeter.service

Salida de ejemplo:

Como puedes ver, está activo (funcionando).

Paso 3: Configurar Proxy Reverso

Para acceder a la interfaz web de Lightmeter a través de un nombre de dominio sobre el protocolo seguro HTTPS, necesitamos configurar un proxy reverso con Apache o Nginx.

Nginx

Si prefieres usar Nginx, crea un archivo de bloque de servidor para Lightmeter.

nano /etc/nginx/conf.d/lightmeter.conf

Agrega el siguiente contenido al archivo. Reemplaza lightmeter.dominio.edu.ar con el nombre DNS de tu preferencia. Recuerda que debes crear un registro DNS para este subdominio.

server {
      listen 80;
      listen [::]:80;
      server_name lightmeter.dominio.edu.ar;

      access_log /var/log/nginx/lightmeter.access;
      error_log /var/log/nginx/lightmeter.error;

      location / {
          proxy_pass http://127.0.0.1:8080;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;

          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-Forwarded-Protocol $scheme;
          proxy_set_header X-Forwarded-Host $http_host;
      }
}

Guarda y cierra este archivo. Luego comprueba la configuración de Nginx.

nginx -t

Si todo está bien recarga Nginx para que los cambios surtan efecto.

systemctl reload nginx

Ahora puedes acceder a Lightmeter via lightmeter.dominio.edu.ar.

Apache

Si prefieres Apache debes habilitar los módulos proxy y header.

a2enmod proxy proxy_http headers proxy_wstunnel

Luego crea un archivo de virtual host para Lightmeter.

nano /etc/apache2/sites-available/lightmeter.conf

Agrega el siguiente contenido al archivo. Reemplaza lightmeter.dominio.edu.ar con el nombre DNS de tu preferencia. Recuerda que debes crear un registro DNS para este subdominio.

<VirtualHost *:80>
   ServerName lightmeter.dominio.edu.ar
   ErrorDocument 404 /404.html

   #HTTP proxy
   ProxyPass / http://localhost:8080/
   ProxyPassReverse / http://localhost:8080/

</VirtualHost>

Guarda y cierra el archivo. Luego habilita este virtual host.

a2ensite lightmeter.conf

Reinicia Apache

systemctl restart apache2

Ahora puedes acceder a Lightmeter via lightmeter.dominio.edu.ar.

Paso 4: Habilitar HTTPS

En artículos anteriores ya se ha abordado este tema. Dependerá del servidor web escogido.

Sea cual fuere la opción escogida puedes acceder a la interfaz web de Lightmeter via HTTPS: https://lightmeter.dominio.edu.ar.

Paso 5: Configurar LightMeter

Ahora puedes ir a la interfaz web de Lightmeter para crear la cuenta de administrador, estas serán las únicas credenciales habilitadas para ingresar. Lightmeter analiza automáticamente los registros de correo y te ofrece una visión general de los dominios más ocupados, los dominios rebotados y los dominios diferidos.

Notificaciones

Haz clic en el icono del engranaje en la esquina superior derecha, Settings, y activa la notificación por correo electrónico, para que Lightmeter pueda notificarte cuando haya correos rebotados, diferidos, o la dirección IP de tu servidor entra en una lista negra.

Detective de Mensajes

Lightmeter permite comprobar el estado de entrega de cada mensaje de correo electrónico. Haz clic en el icono de la lupa en la esquina superior derecha. A continuación, introduce las direcciones de correo electrónico del remitente y del destinatario.

Como puedes ver, el mensaje fue enviado correctamente. Puedes ir a Settings y habilitar el acceso público a la página del detective de mensajes, para que los usuarios de tu servidor también puedan comprobar el estado de entrega del correo electrónico.

 

Linux Mail Server Monitoring with Lightmeter (Debian, Ubuntu)

Etiquetas:

1 pensamiento en “Monitoreo de servidor de correo con Lightmeter”

  1. Pingback. Servidor de Correo – Casillas y usuarios virtuales

Los comentarios están cerrados.