Nagios – Comprobando si estamos en listas negras de SPAM
Qué pasa txabales!!! Venimos con algo que nos puede encajar a todos! Quien tenga un entorno de Nagios o de Centreon ya montado (o se quiera animar), ¿por qué no controlamos si nuestras IPs públicas o las direcciones IP por las que sale el correo de nuestra organización están en listas negras? Hasta ahora ya sabemos cómo nos enteramos que estás en listas negras… por que o no sale o no entra el correo, no? Adelántate y consulta en las principales listas negras!!
Con un magnifico script, llamado ‘check_rbl’, podremos en un sólo vistazo comprobar si estamos en las listas negras de Spamers, mirará en SORBS, Spamhaus, SpamCop, Mail abuse o RFC Ignorant entre otros! Nos descargamos el script de https://exchange.nagios.org/directory/Plugins/Email-and-Groupware/check_rbl-2Epl/details, lo descargamos al directorio de plugins de Nagios (‘/usr/lib/nagios/plugins’) o de Centreon (‘/usr/lib/centreon/plugins’), depende lo que use cada uno 😉 Y luego recordar hacerlo ejecutable (‘chmod +x check_rbl’)!
Si al ejecutarlo nos da el error, es posible que tengamos que corregir el path de perl, en mi caso, tenía un error ‘bash: ./check_rbl: /usr/bin/perl^M: bad interpreter: No such file or directory’, tuve que modificar la primera línea de ‘check_rbl’, quedando así ‘#!/usr/bin/perl -w’.
Probamos pues desde la shell, pasamos el comando y le metemos como parámetro bien una dirección pública o un FQDN. Este sería el formato de ejemplo:
[sourcecode]./check_rbl DIRECCION_IP_PUBLICA[/sourcecode]
Como es habitual ya, deberemos de dar de alta el Comando que vamos a ejecutar desde Centreon, iremos a “Configuration” > “Commands” > “Add” o clonamos uno existente, como siempre! Y modificamos al menos los siguientes datos:
- Command Name: Especificamos el nombre del comando, como os digo siempre, suelo usar el nombre del script para localizarlo en caso necesario lo más rapido posible.
- Command Type: Marcamos ‘Check’.
- Command Line: Introducimos lo que ejecutará este comando, en el ejemplo que nos atañe: ‘/usr/lib/nagios/plugins/check_rbl $ARG1$’
- Argument Description: Pulsamos en ‘Describe arguments’ y definimos cada variable ARGx con lo que queremos ver más tarde a la hora de crear los servicios, como vemos yo le indico ‘IP pública o hostname a comprobar’.
Guardamos con “Save”,
Y cuando ya tenemos el Comando creado en Centreon, pues ya podremos crear tantos servicios que nos interesen controlar, como es obvio, crearemos un Servicio con cada IP pública y/o hostname FQDN que queremos comprobar. Si tenemos 2 WAN, las monitorizaremos, además de los registros MX, si es que son en un hosting público, etc, etc…. Creamos el Servicio pues, “Configuration” > “Services” > “Add” o clonamos uno existente, dejamos los siguientes parámetros al menos:
- Description: Será el nombre del servicio con el que veremos en la monitorización.
- Linked with Hosts: Lo asociamos con un Host, normalmente con el servidor de correo, por tenerlo organizadito.
- Template: Indicamos la plantilla padre desde la que heredará cierta configuración, si es que la hicimos en dicha plantilla, como siempre que lo habitual es modificar las notificaciones, periodos, contactos, etc… Normalmente será la ‘generic-active-service-custom’.
- Check Command: Seleccionamos el comando que acabamos de crear en el paso anterior, ‘check_rbl’.
- Args: Al seleccionar dicho comando nos saldrán los argumentos que pide, ¿no? Recordamos que indicamos que habrá que meter la IP pública o FQDN, este sería el lugar de poner ya dicha IP.
Guardamos con “Save”,
Y así de sencillo, ahora, como siempre, recordar exportar los datos y recargar la configuración para que Centreon pueda leer los nuevos cambios que acabamos de meter. Os recuerdo, iremos a “Configuration” > “Pollers” > “Export configuration”, seleccionando nuestro poller, marcamos los checks y reiniciamos & “Export”.
Una vez generado todo, ya podremos ir a la parte de “Monitoring” y comprobarlo! Si queremos forzar el checkeo, ya sabemos, seleccionamos los servicios que nos interesen y en el combo seleccionamos ‘Services – Schedule immediate check (Forced)’. Deberá comprobar ya nuestras IPs públicas o nombres DNS externos si están en listas negras!!! Disfrutarlo!!! A monitorizar todo!!! Hasta la abuela!!! 😉