Monitorizando vulnerabilidades con Nagios y OpenVAS

Bueno, bueno! Otra de las maravillas que podemos hacer con Nagios o Centreon es… la posibilidad de monitorizar vulnerabilidades en nuestros equipos! Qué grande, verdad?? Nos apoyaremos en OpenVAS, utilizaremos los checkeos que tengamos para centralizarlos desde una sola consola. Podremos saber cuantas vulnerabilidades ponen en riesgo nuestros servidores y analizar su evolución con las gráficas y por supuesto recibir alertas!

 

Será importante tener ya montado nuestro OpenVAS, si aún no lo tienes, repasa este documento! Utilizaremos una herramienta que trae openvas-cli, llamada ‘check_omp’ que nos servirá para leer el resultado de las Tareas de checkeo que tengamos definidas en OpenVAS y lo escupe en formato Nagios para poder ser tratado. Por tanto, deberemos instalar el servidor de ejecución remota de plugins o NRPE en la máquina con OpenVAS para ejecutarlo de forma remota desde Nagios o Centreon y leer su output. Y tras ello, procedemos a configurar el fichero de los comandos como es habitual y así podremos trabajar desde Centreon para crear tantos Servicios de monitorización de vulnerabilidades como necesitemos! Si no has instalado check_nrpe en tu servidor de Nagios o Centreon, echa un vistazo a este documento anterior.

 

 

En la máquina donde tengamos OpenVAS, instalamos NRPE y algunos plugins base con:

apt-get install nagios-nrpe-server nagios-plugins-basic

 

Creamos el fichero de configuración de Comandos, será aquí donde definamos el alias que llamaremos luego desde Centreon y lo que ejecutará. Creamos el fichero con ‘vim /etc/nagios/nrpe.d/op5_commands.cfg’ y le metemos la configuración que necesitemos, os dejo un par de ejemplos (un host ESXi que creamos una Tarea en el documento anterior y un Router):

################################
#
# op5-nrpe command configuration file
#
# COMMAND DEFINITIONS
# Syntax:
# command[<command_name>]=<command_line>
#
command[OS-ESXi-01]=check_omp -u admin -w XXXXXXX -p 9391 --status -T 'Tarea OS-ESXi-01' --last-report
command[ROUTER]=check_omp -u admin -w XXXXXXX -p 9391 --status -T 'Tarea Resto' --last-report -F 192.168.1.1

 

Modificamos el archivo de configuración de NRPE y añadimos la dirección IP desde la que Nagios o Centreon le hará las consultas con ‘vim /etc/nagios/nrpe.cfg’ y modificamos la siguiente linea:

allowed_hosts=127.0.0.1,192.168.1.102

 

Reiniciamos NRPE para que recargue la configuración que acabamos de hacerle, por tanto, recordar que cada vez que añadáis un alias/comando en el fichero de confguración de Comandos habrá que reiniciar para releer la config, con:

/etc/init.d/nagios-nrpe-server restart

 

Ahora ya podremos irnos a nuestro Centreon y dar de alta los Servicios, pero tenemos 2 opciones, o bien dar de alta el host OpenVAS en Nagios y enlazarle a él los Servicios de los resultados de las Tareas de OpenVAS que tengamos; o bien duplicar el Comando check_nrpe en nuestro Centreon para que en vez de usar la variable $HOSTADDRESS$ use la IP a piñon del OpenVAS y así con esto conseguir hacer un Servicio con los resultados de la monitorización y asignarlo cada uno a su HOST, por tenerlo mejor organizado, y esto segundo es lo que haremos en el documento.

 

 

Desde Cetreon, clonamos el Comando ‘check_nrpe’ para modificar el nuevo que nos genere, para ello “Configuration” > “Services”, filtramos escribiendo ‘nrpe’ en el campo de filtro, seleccionamos el check indicado y desde la barra de “More actions…” seleccionamos “Duplicate”,

 

 

El Comando que nos crea lo editamos y ponemos la siguiente configuración:

  • Command Name: Indicamos por ejemplo check_nrpe_openvas, que será el que usen los Servicios que creemos a partir de ahora para checkear vulnerabilidades.
  • Command Type: Check
  • Command Line: Como indique antes, cambiaremos lo que ejecutará, reemplazando la variable que coje la IP del host monitorizado por la IP a pelo de la maquina con OpenVAS, ya que las consultas hay que hacerselas a ella! Quedará algo así
$USER1$/check_nrpe -H DIRECCION_IP_OPENVAULT -c $ARG1$

 

Grabamos con “Save”,

 

Y ya sólo queda crear los Servicios que monitorizarán de forma periódica las vulnerabilidades de nuestros servidores! Crearemos tantos Servicios como Targets tendremos analizados en las Tareas de OpenVAS, quedaría de la siguiente manera:

  • Description: Será algo que asocie a lo que se esta monitorizando con este servicio, algo como ‘Vulnerabilidades’ creo que lo deja clarinete.
  • Linked with Hosts: Enlazaremos el Servicio con el Host analizado.
  • Template: Indicamos la plantilla base que usemos si es que la tenemos.
  • Check Command: Seleccionamos del combo el Comando recién creado en el paso anterior llamado ‘check_nrpe_openvas’.
  • Args: Será aquí donde indicaremos el alias que definimos en ‘/etc/nagios/nrpe.d/op5_commands.cfg’ para asociarlo con el checkeo que tiene que hacer.

 

 

Normalmente, este tipo de checkeos no ace falta que se haga con la perioricidad habitual, y es por ello que quizás debamos definir un periodo de checkeos en “Check Period” y establecer una perioricidad de ejecución más alta en “Normal Check Interval”. Grabamos con “Save”,

 

Y nada, tras grabar y exportar la configuración de Centreon, ya podremos ir a la vista principal de monitorización, filtrar y buscar nuestros nuevos servicios que habremos asociado a cada Host y forzar su ejecución, y tras unos segundos… zas! Disponemos en cada Host su Servicio que lee el último Report de OpenVAS! Olé, olé y olé Rigodón!

 

Ojo! Y no olvidemos establecer las tareas de OpenVAS con una programación! Editaremos cada Tarea y le asociaremos el “Schedule” que nos interese! Gracias por leer el blog y por compartir!

 

Héctor Herrero

Autor del blog Bujarra.com
Cualquier necesidad que tengas, no dudes en contactar conmigo, os intentare ayudar siempre que pueda, compartir es vivir 😉 . Disfrutar de los documentos!!!