
¿Qué es Nagios Core?
Se trata de una herramienta, licenciada bajo los términos de software libre GPL (GNU General Public License), que sirve principalmente para monitorizar servicios de ordenadores o servidores de nuestra propia red o incluso de otras, ya sean estos Windows, Linux, Netware, o incluso hardware de comunicaciones como routers y switches, o servidores de impresión.
Los servicios más habituales que requieren esta supervisión son, por ejemplo, SMTP y POP3 sobre los servidores de correo electrónico, HTTP sobre los servidores web, NNTP, PING, etc. De esta forma sabremos si nuestro servidor web, o el de alguno de nuestros clientes, están funcionando correctamente, o bien han dejado de responder. Igualmente también se utiliza para monitorizar recursos de los servidores (carga de procesador, espacio en disco duro, memoria, etc.). Nagios nos avisará por correo electrónico, por ejemplo, sobre el estado de alerta de algunos de estos servicios monitorizados, lo que nos permitirá identificar rápidamente un posible problema.
Ya, con nuestro entorno gráfico instalado sobre Ubuntu Server 13.10, el entorno de ventanas nos permitirá gestionar mejor nuestro servidor, y proceder entre otras cosas con la instalación de Nagios Core sobre Ubuntu Server 13.10.
Requerimientos
Los requerimientos necesarios son los siguientes:
- El servidor web Apache 2.
- PHP.
- El compilador GCC y las librerías de desarrollo.
- GD Graphics Library versión 1.6.3 o superior.
Instalación de Nagios Core en Ubuntu Server
Para ello, y siempre como root del sistema; o bien precediendo el comando sudo a las diferentes instrucciones, para elevar privilegios, comenzaremos por instalar los paquetes necesarios:
triton@nautilus:~$ sudo apt-get install build-essential apache2 apache2-utils php5-gd libgd2-xpm-dev libapache2-mod-php5 |

Nagios Core – Instalación de los componentes necesarios
La forma más rápida de comprobar que el servidor web Apache ya está funcionando es accediendo a la dirección IP del equipo, en este caso la 192.168.0.100, y comprobando si se visualiza la siguiente pantalla:

Nagios Core – Servidor web Apache funcionando
Para trabajar más cómodos a partir de este momento utilizaremos la opción comentada anteriormente, pasaremos a root de la siguiente forma:
triton@nautilus:~$ sudo -s |
Nos posicionamos en el directorio descargas, creándolo antes si no existe:
root@nautilus:~# mkdir ~/descargas |
root@nautilus:~# cd ~/descargas |
Y desde allí bajamos la última versión estable de Nagios Core en estos momentos, la 4.0.2, y los plugins, en su versión 1.5:
root@nautilus:~/descargas/# wget http://prdownloads.sourceforg e.net/sourceforge/nagios/nagios-4.0.2.tar.gz |

root@nautilus:~/descargas/# wget https://www.nagios-plugins.or g/download/nagios-plugins-1.5.tar.gz |

Nagios Core – Archivos de instalación descargados
A continuación crearemos una nueva cuenta en Ubuntu, que servirá como cuenta de sistema para el proceso Nagios:
root@nautilus:~# useradd -m -s /bin/bash nagios |
root@nautilus:~# passwd nagios |
Crearemos igualmente un grupo llamado nagcmd, que permitirá ejecutar los comandos externos a través de la interfaz web, en el que deberemos incluir la cuenta de sistema Nagios y la de Apache:
root@nautilus:~# groupadd nagcmd |
root@nautilus:~# usermod -a -G nagcmd nagios |
root@nautilus:~# usermod -a -G nagcmd www-data |
Extraer el código de Nagios:
root@nautilus:~# cd ~/descargas |
root@nautilus:~/descargas# tar xzf nagios-4.0.2.tar.gz |
root@nautilus:~/descargas# cd nagios-4.0.2 |

Nagios Core – Directorios y archivos
Ejecutar el script de configuración con los siguientes parámetros:
root@nautilus:~/descargas/nagios-4.0.2# ./configure –with-nagios-group=nagios –with-command-group=nagcmd –with-mail=/usr/bin/sendmail |
Y compilar el código fuente de Nagios Core:
root@nautilus:~/descargas/nagios-4.0.2# make all |
En la siguiente pantalla podemos comprobar el éxito del resultado de la compilación:

Nagios Core – Resultado de la compilación
Posteriormente se deberán instalar los binarios, los scripts de inicio, archivos de configuración por defecto y configurar permisos en el directorio de comandos externos:
root@nautilus:~/descargas/nagios-4.0.2# make install |

Nagios Core – Resultado tras la instalación
Y haciendo caso de la propuesta del instalador, recuadrado en rojo:
root@nautilus:~/descargas/nagios-4.0.2# make install-init |
root@nautilus:~/descargas/nagios-4.0.2# make install-commandmode |
root@nautilus:~/descargas/nagios-4.0.2# make install-config |
Los archivos de configuración han sido guardados en el directorio /usr/local/nagios/etc.
Editaremos el archivo contacts.cfg con un editor de texto, por ejemplo el vim o el nano, para modificar la dirección de correo electrónico sobre la que pretendemos recibir las alertas:
root@nautilus:~/descargas# vim /usr/local/nagios/etc/objects/ contacts.cfg |

Nagios Core – Archivo de configuración contacts.cfg
Tras sustituir la dirección de correo que había por defecto, por la que queremos que se utilice para monitorizar las alertas, saldremos con wq (write and quit).
Como Nagios Core tratará de crear el archivo de configuración de la interfaz web sobre el directorio /etc/httpd/ que es una estructura de directorios inexistente, se producirá un error. Para evitarlo deberemos crearla previamente:
root@nautilus:~# mkdir/etc/httpd |
root@nautilus:~# mkdir /etc/httpd/conf.d |
root@nautilus:~# mkdir /etc/httpd/conf.d/nagios.conf |
El siguiente paso consiste en instalar la interfaz web, crear el usuario para hacer login en la misma y reiniciar el servicio Apache:
root@nautilus:~/descargas/nagios-4.0.2# make install-webconf |
root@nautilus:~/descargas/nagios-4.0.2# htpasswd -c /usr/loca l/nagios/etc/htpasswd.users nagiosadmin |
Esta última línea nos pedirá una contraseña, y su confirmación, que deberemos recordar para nuestro posterior login en la interfaz web:

Nagios Core – Contraseña para nagiosadmin
Copiamos los siguientes archivos de forma manual y establecemos los permisos adecuados, según las siguientes instrucciones:
root@nautilus:~/descargas/nagios-4.0.2# cp -R contrib/eventhan dlers/usr/local/nagios/libexec |
root@nautilus:~/descargas/nagios-4.0.2# chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers |
Reiniciaremos el servicio Apache para que los cambios surtan efecto:
root@nautilus:~# /etc/init.d/apache2 reload |
Compilación e instalación de los plugins de Nagios
El primer paso consistirá en extraer el código fuente de los plugins que anteriormente hemos descargado. Así pues, desde el directorio descargas ejecutamos la instrucción y nos posicionamos en el nuevo directorio:
root@nautilus:~/descargas# tar xzf nagios-plugins-1.5.tar.gz |
root@nautilus:~/descargas# cd nagios-plugins-1.5 |
root@nautilus:~/descargas/nagios-plugins-1.5# ./configure –with-nagios-user=nagios –with-nagios-group=nagios |
root@nautilus:~/descargas/nagios-plugins-1.5# make |
root@nautilus:~/descargas/nagios-plugins-1.5# make install |

Nagios Core – Instalación de los plugins 1.5
Una vez realizada la instalación, tan solo nos quedará configurar Nagios para que arranque automáticamente con el sistema:
root@nautilus:~/descargas/nagios-plugins-1.5# cd |
root@nautilus:~# ln -s /etc/rcS.d/S99nagios |
Verificar el archivo de configuración:
root@nautilus:~# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg |

Nagios Core – Verificación del archivo de configuración
Si el resultado está libre de errores, tal y como aparece en la imagen anterior, ya podemos ejecutarlo:
root@nautilus:~# /etc/init.d/nagios start |
Pero un nuevo error ocurrirá al ejecutar el demonio. Esto es lo que sucede en muchos casos cuando instalamos versiones muy recientes de los productos.

Nagios Core – Error al iniciar el servicio
Para solucionar el error, deberemos modificar el script de inicio de la siguiente forma:
root@nautilus:~# apt-get install daemon |
root@nautilus:~# sed -i ‘s/^\.\ \/etc\/rc.d\/init.d\/functions$/\.\ \/lib\/lsb\/init-functions/g’ /etc/init.d/nagios |
root@nautilus:~# sed -i ‘s/status\ /status_of_proc\ /g’ /etc/init.d/nagios |
root@nautilus:~# sed -i ‘s/daemon\ –user=\$user\ \$exec\ -ud\ \$config/daemon\ –user=\$user\ –\ \$exec\ -d\ \$config/g’ /etc/init.d/nagios |
root@nautilus:~# sed -i ‘s/\/var\/lock\/subsys\/\$prog/\/var\/lock\/\$prog/g’ /etc/init.d/nagios |
Finalmente, ya estaremos en condiciones de arrancar el servicio sin errores:
root@nautilus:~# service nagios start |
Una vez finalizada la instalación, no nos olvidemos de salir de la cuenta root:
root@nautilus:~# exit |
Para comprobar la correcta instalación de Nagios Core, nos logaremos en la interfaz web, con el usuario nagiosadmin y la contraseña escogida:

Nagios Core – Interfaz web
Hasta aquí la forma más básica de instalación. En nuevas publicaciones veremos algunos ejemplos de configuración.
Si deseas estar informado sobre la publicación de nuevos artículos,
no dudes en subscribirte a E@pertos en Sistem@s.
Compártelo si te ha gustado:
10 responses to Nagios Core
Carlos Castro on 6 diciembre, 2013 at 18:44
Buenas.
Tengo un error al querer ejecutar el comando sed -i
sed: -e expresión #1, carácter 1: orden desconocida: «�»
Puedes ayudarme?
J Carlos Salas on 6 diciembre, 2013 at 22:24
A mí me funciona perfectamente con las comillas simples, pero prueba tú utilizando comillas dobles y me cuentas. A ver si es eso.
Van NistelFroy on 19 junio, 2014 at 16:03
Excelente tuto, nagios tiene una herramienta que te manda alertas a tu correo, intente configurar postfix pero no tuve exito solo lo pude hacer local no podrian hacer un tuto para instalar postfix en nagios en la red ahi muchos pero no son muy entendibles como aqui que se explica el porque a detalle. gracias y saludos !!!
Yunheska Duque on 5 julio, 2014 at 21:41
estoy teniendo problemas con las últimas líneas de comando, todo estuvo perfecto hasta la instalación del demonio, me da el mismo error del amigo Castro cambié las comillas y nada revisé las rutas y sucede que el archivo /rc.d no se encuentra en /etc, agradezco la ayuda que me puedan proporcionar. saludos y mil Gracias por el post muy útil y detallado
Cristian on 6 noviembre, 2014 at 17:46
Buenas tardes. Excelentes tutoriales y sobre todo este. Aunque tengo un inconveniente. Si bien corrí paso a paso las instrucciones y cada una de ella corrió perfecto, al intentar accerder a http://mi_ip/nagios – apache no despliega mi pagina. En que la pude haber pifiado? o donde debería corroborar o indicar a apache q levantar?
Aguardo comentarios. Mil gracias.
Anderson on 3 marzo, 2017 at 11:50
Buenos días, en el momento presento problemas con querer cambiar la dirección de correo electrónico, debido que el archivo contacts.cfg es solo lectura. root@nautilus:~/descargas# vim /usr/local/nagios/etc/objects/ contacts.cfg.
Me puedes ayudar con esto?
Lzualltec on 13 abril, 2017 at 23:52
Buenas tardes quisiera saber como crear contactos de email y telegram en nagios así como clarificarlos por grupos modifique el archivo de contacts.cfg y me muestra demasiados errores ayuda urgente de favor saludos.
Lzualltec on 13 abril, 2017 at 23:54
de echo no se donde colocar puntos y comas para separar contactos de telegram y email o de telefono sms
marco lerin on 3 mayo, 2017 at 4:43
alguien me podría ayudar para crear un mapa de red en nagios core 4.2
Gustavo on 17 abril, 2019 at 21:29
Buenas tardes, estamos analizando la incorporacion del Nagios para monitoreo, me pueden ayudar con esta duda?
El nagios te permite agregarle la ejecución de un script (que sería el que mediría la performance) y manejar el valor que devuelve, comparándolo con los umbrales que se le configuren?
Gracias