Monitoreo · 12 min read · Oct 18, 2025

Cómo instalar la herramienta de monitoreo Nagios 4.3.x en Debian 9

Este tutorial te mostrará cómo instalar y configurar la última versión de Nagios Core, actualmente 4.3.4, desde fuentes en Debian 9.1, nombre en clave Stretch.

Nagios, también conocido como Nagios Core, es una herramienta de monitoreo de red de código abierto y gratuita, mantenida activamente por sus desarrolladores, diseñada para monitorear toda la infraestructura de red. Nagios puede monitorear casi cualquier dispositivo de red, siempre que el dispositivo tenga una conexión de red configurada, como enrutadores, conmutadores, servidores, escritorios, dispositivos de firewall, dispositivos IoT. Además de monitorear dispositivos para determinar su estado en la red, Nagios también puede monitorear servicios de red, aplicaciones u otras tareas específicas relacionadas con sistemas operativos y puede configurarse para enviar alertas por correo o SMS para informar a los administradores de red sobre posibles dispositivos, interrupciones o fallos en el servicio.

Requisitos

  • Debian 9.1 instalado en una máquina física o en un servidor privado virtual. Preferiblemente, la instalación debe realizarse con requisitos de software mínimos.
  • La tarjeta de interfaz de red configurada con una dirección IP estática.
  • Acceso a la cuenta root o a un usuario con privilegios de cuenta root a través de sudo.
  • Un nombre de dominio, privado o público, con los registros DNS A configurados adecuadamente. En caso de que no tengas un servidor DNS configurado en tus instalaciones, puedes acceder a Nagios a través de la dirección IP del servidor.

Configuración inicial

Antes de comenzar a instalar Nagios desde fuentes, asegúrate de que el sistema cumpla con todos los requisitos de software para compilar e instalar Nagios. En el primer paso, actualiza los repositorios de tu sistema y los paquetes de software emitiendo el siguiente comando.

apt update
apt upgrade

Instalar actualizaciones de Debian

En el siguiente paso, inicia un nuevo comando para instalar algunas utilidades necesarias que se utilizarán para gestionar tu sistema desde la línea de comandos.

apt install wget unzip zip bash-completion

A continuación, configura el nombre de tu sistema ejecutando el siguiente comando:

hostnamectl set-hostname nagios.server.lan

Verifica el nombre de host de la máquina y el archivo de hosts emitiendo los siguientes comandos.

hostnamectl
cat /etc/hostname
cat /etc/hosts

Finalmente, reinicia el sistema para aplicar el nuevo nombre de host.

init 6

Nagios es una aplicación de monitoreo basada en la web con algunas partes escritas en el lenguaje de programación PHP del lado del servidor y otros programas CGI. Para ejecutar los scripts de archivos PHP de Nagios, debe instalarse y estar operativo un servidor web, como el servidor HTTP Apache, y una puerta de enlace de procesamiento PHP. Para instalar el servidor web Apache y el intérprete PHP junto con todos los módulos PHP requeridos que necesita Nagios 4 para funcionar correctamente, emite el siguiente comando en la consola de tu servidor.

apt install apache2 libapache2-mod-php7.0 php7.0

Después de que Apache y PHP se hayan instalado, prueba si el servidor web está en funcionamiento y escuchando conexiones de red en el puerto 80 emitiendo el siguiente comando con privilegios de root.

netstat –tlpn

En caso de que la utilidad de red netstat no esté instalada por defecto en tu sistema Debian 9, ejecuta el siguiente comando para instalarla.

apt install net-tools

Verificar instalación de apache con el comando netstat

Al inspeccionar la salida del comando netstat, puedes ver que el servidor web apache está escuchando conexiones de red entrantes en el puerto 80.

En caso de que tengas un firewall habilitado en tu sistema, como la aplicación de firewall UFW, deberías agregar una nueva regla para permitir que el tráfico HTTP pase a través del firewall emitiendo el siguiente comando.

ufw allow WWW

o

ufw allow 80/tcp

En caso de que desees usar reglas iptables en bruto para permitir el tráfico entrante en el puerto 80 en el firewall para que los visitantes puedan navegar por la interfaz web de Nagios Core, agrega la siguiente regla.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

A continuación, habilita y aplica los siguientes módulos de Apache requeridos por la aplicación web de Nagios para funcionar correctamente, emitiendo el siguiente comando.

a2enmod rewrite headers cgi
systemctl restart apache2

Habilitar módulos de apache

Finalmente, prueba si la página web predeterminada del servidor Apache se puede mostrar en el navegador de tu cliente visitando la dirección IP de tu máquina Debian o el nombre de dominio a través del protocolo HTTP, como se muestra en la imagen a continuación. Si no conoces la dirección IP de tu máquina, ejecuta los comandos ifconfig o ip a.

http://192.168.1.14

Página web predeterminada de Apache

En el siguiente paso, necesitamos hacer algunos cambios adicionales en el archivo de configuración predeterminado de PHP para asegurar que la configuración de timezone de PHP esté correctamente configurada y coincida con la ubicación física de tu sistema. Abre el archivo /etc/php/7.0/apache2/php.ini para editar y asegúrate de que las siguientes líneas estén configuradas de la siguiente manera.

date.timezone = Europe/London

Reemplaza la variable de zona horaria de acuerdo a tu hora física consultando la lista de zonas horarias proporcionada por la documentación de PHP en el siguiente enlace http://php.net/manual/en/timezones.php.

Reinicia el demonio de apache para aplicar los cambios.

systemctl restart apache2

Después de haber realizado los cambios requeridos, crea un archivo de información de php y reinicia el demonio de apache para aplicar los cambios emitiendo los siguientes comandos.

echo ''| tee /var/www/html/info.php
systemctl restart apache2

Verifica si la zona horaria de PHP se ha configurado correctamente visitando el archivo del script phpinfo desde un navegador en la siguiente URL, como se ilustra en la imagen a continuación. Desplázate hacia abajo hasta la configuración de fecha para verificar la configuración de la zona horaria de php.

http://192.168.1.14/info.php

Verificar configuración de zona horaria de PHP

Instalar Nagios Core

Antes de descargar y compilar Nagios Core desde fuentes, primero asegúrate de instalar los siguientes paquetes pre-requeridos en tu sistema, emitiendo el siguiente comando.

apt install autoconf gcc libc6 make apache2-utils libgd-dev

Después de que todas las dependencias necesarias y paquetes para compilar Nagios desde fuentes estén instalados en tu sistema Debian, visita el sitio web oficial de Nagios en https://www.nagios.org/downloads/nagios-core/ y descarga la última versión del archivo fuente estable de Nagios Core emitiendo la utilidad wget, como se muestra en el siguiente extracto de comando.

wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gz

Después de que el archivo tar de la fuente de Nagios se haya descargado, extrae el archivo tar y entra en el directorio nagios extraído, con los siguientes comandos. Ejecuta el comando ls dentro del directorio nagios extraído para listar los archivos fuente.

tar xzf nagios-4.3.4.tar.gz
cd nagios-4.3.4/
ls

Descargar Nagios

Mientras estés dentro del directorio de fuentes extraídas de Nagios, comienza el proceso de compilación de Nagios desde fuentes emitiendo los siguientes comandos. Primero, configura Nagios para ser compilado con la ruta de configuración http del servidor Apache apuntando al directorio sites-enabled.

./configure --with-httpd-conf=/etc/apache2/sites-enabled

A continuación, compila Nagios emitiendo el siguiente comando, como se ilustra en las imágenes a continuación.

make all

Configurar y hacer Nagios

Compilar Nagios desde la fuente

A continuación, crea el usuario y grupo del sistema nagios y agrega la cuenta nagios al usuario de ejecución de Apache para que el usuario nagios tenga los permisos requeridos para acceder a los recursos web.

useradd nagios
usermod -a -G nagios www-data

Ahora, comienza a instalar los archivos binarios de Nagios, scripts CGI y archivos HTML emitiendo el siguiente comando. La salida final del comando make install debería mostrar las ubicaciones binarias, como se muestra en la imagen a continuación.

make install

Instalar archivos compilados de Nagios

A continuación, instala los archivos de inicialización del sistema del demonio de Nagios y habilita el servicio nagios a nivel del sistema emitiendo los siguientes comandos.

make install-init
systemctl enable nagios.service

Instalar archivos de inicialización de Nagios

Además, instala y configura el archivo de comando externo de Nagios ejecutando el siguiente comando.

make install-commandmode

A continuación, ejecuta el siguiente comando para instalar los archivos de configuración de muestra de Nagios que son requeridos por el demonio de Nagios para iniciar y operar correctamente.

make install-config

Instalar archivos de configuración de muestra de Nagios

Finalmente, instala el archivo de configuración del servidor web Apache para Nagios, que se ubicará en el directorio /etc/apacahe2/sites-enabled/, ejecutando el siguiente comando.

make install-webconf

Instalar configuración web de apache para Nagios

Crea la cuenta de usuario nagiosadmin con la contraseña correspondiente requerida por el servidor web Apache para poder iniciar sesión en la herramienta web de Nagios emitiendo el siguiente comando.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Para acceder al panel web de Nagios, primero reinicia el servidor HTTP Apache y comienza el servicio Nagios emitiendo los siguientes comandos.

systemctl restart apache2
systemctl start nagios

Luego, inicia sesión en la interfaz web de Nagios abriendo un navegador y visitando la dirección IP de tu servidor o el nombre de dominio o FQDN y agrega la ruta de URL /nagios a través del protocolo HTTP, como se ilustra en las capturas de pantalla a continuación. Usa el usuario nagiosadmin con la contraseña configurada anteriormente para este usuario para iniciar sesión en la interfaz web de Nagios.

Iniciar sesión en Nagios

Panel de control de Nagios

Instalar complementos de Nagios

El motor de Nagios ahora está instalado en el sistema. Sin embargo, el software de Nagios aún no está operativo, porque los complementos que se utilizan para verificar hosts y servicios no están instalados. Este comportamiento se puede observar navegando al menú Hosts donde notarás los errores de complemento, como se muestra en la captura de pantalla a continuación.

Nagios aún no tiene complementos instalados

Para compilar e instalar algunos complementos básicos de Nagios desde la fuente, primero asegúrate de instalar las siguientes bibliotecas y dependencias emitiendo el siguiente comando.

apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping default-libmysqlclient-dev

Después de que todos los paquetes de dependencias se hayan instalado en tu sistema, ve a la página del repositorio de complementos de Nagios visitando la siguiente dirección https://github.com/nagios-plugins/nagios-plugins/releases y descarga el último archivo de código fuente con la ayuda de la utilidad de línea de comandos wget, como se muestra en el siguiente ejemplo de comando.

wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz

Luego, extrae el archivo tar comprimido del código fuente de los complementos de Nagios y entra en el directorio nagios-plugins extraído ejecutando los siguientes comandos.

tar xfz release-2.2.1.tar.gz
cd nagios-plugins-release-2.2.1/

Descargar complementos de Nagios

Para compilar e instalar los complementos de Nagios desde fuentes, ejecuta los siguientes scripts y comandos con privilegios de root, como se muestra en el siguiente extracto.

./tools/setup
./configure
make
make install

Después de que todos los complementos estén instalados, puedes localizarlos en la ruta del sistema /usr/local/nagios/libexec/. Emite el comando ls para examinar todo el contenido del directorio /usr/local/nagios/libexec/ y ver qué complementos están disponibles para Nagios en tu sistema.

ls /usr/local/nagios/libexec/

Directorio Libexec de Nagios

Para que el motor de Nagios recoja y use los complementos instalados, necesitas reiniciar y verificar el estado del servicio nagios con los siguientes comandos.

systemctl restart nagios.service
systemctl status nagios.service

Para probar si los complementos de Nagios están funcionando como se espera, inicia sesión nuevamente en la interfaz web de Nagios abriendo un navegador y visitando la dirección IP de tu servidor, FQDN o nombre de dominio y navega al menú Hosts o Servicios, como se ilustra en la captura de pantalla a continuación. Los hosts y servicios monitoreados deberían ser verificados ahora por los complementos y deberían mostrar la salida correcta, dependiendo del estado de salida del comando del complemento. Los colores mostrados son: verde para OK, amarillo para Advertencia y rojo para Crítico.

Servicios monitoreados por Nagios

Para usar el protocolo HTTPS para acceder a la interfaz web del motor de Nagios a través de una conexión segura, emite el siguiente comando para habilitar el módulo SSL del servidor web Apache y el archivo de configuración del sitio SSL.

a2enmod ssl
a2ensite default-ssl.conf

A continuación, para forzar a los visitantes a ser redirigidos automáticamente al protocolo HTTPS cada vez que visiten la interfaz web de Nagios desde sus navegadores, abre el archivo /etc/apache2/sites-enabled/000-default.conf para editar y agrega las siguientes reglas de reescritura después de la declaración DocumentRoot como se muestra en el siguiente ejemplo.

RewriteEngine on  
RewriteCond %{HTTPS} off  
RewriteRule ^(.*) https://%{HTTP_HOST}/$1

Habilitar https en apache

Finalmente, reinicia el demonio de Apache para aplicar todas las reglas configuradas hasta ahora y visita la interfaz web de Nagios a través del protocolo HTTP.

systemctl restart apache2.service

Para verificar si Apache está escuchando en el puerto HTTPS, ejecuta el comando netstat y busca la vinculación del puerto 443, como se muestra en la imagen a continuación.

netstat -tlpn

En caso de que la aplicación de firewall UFW bloquee las conexiones de red entrantes al puerto HTTPS, deberías agregar una nueva regla para permitir que el tráfico HTTPS pase a través del firewall emitiendo el siguiente comando.

ufw allow 'WWW Full'

o

ufw allow 443/tcp

En caso de que estés ejecutando un firewall iptables para proteger tu sistema Debian, agrega la siguiente regla para permitir el tráfico entrante en el puerto 443 en el firewall para que los visitantes puedan navegar por la interfaz web de Nagios Core.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Ahora, deberías ser redirigido automáticamente al panel web de Nagios a través del protocolo HTTPS. Debido a que estás utilizando los pares de certificados autofirmados emitidos por Apache en la instalación, se debería mostrar una advertencia de error en el navegador. Acepta la advertencia del navegador e inicia sesión en Nagios con las credenciales configuradas anteriormente, como se muestra en la captura de pantalla a continuación.

Nagios con HTTPS

Para agregar un nuevo host que será monitoreado por Nagios, abre el archivo de configuración /usr/local/nagios/etc/objects/localhost.cfg para editar y agrega el nuevo dispositivo después de la definición de localhost, como se muestra en el siguiente ejemplo.

define host{  
        use                     linux-server  
        host_name               router  
        alias                   router  
        address                 192.168.1.1  
        }

Editar archivo de configuración de nagios

Reemplaza las variables host_name, alias y dirección IP según corresponda y reinicia el demonio de Nagios para cargar la nueva definición de host y aplicar los cambios.

systemctl restart nagios

Espera unos minutos y navega al menú Hosts en la interfaz web de Nagios para verificar el estado del dispositivo, como se ilustra en la imagen a continuación.

Nagios asegurado con SSL / TLS

¡Eso es todo! Has instalado y configurado con éxito el motor de Nagios desde fuentes en Debian 9. Puedes comenzar a agregar los dispositivos de red de tu organización, servidores o servicios críticos para ser monitoreados por Nagios. Para otras configuraciones personalizadas relacionadas con Nagios Core y los complementos de Nagios, visita las páginas de documentación en el siguiente enlace https://support.nagios.com/kb/category.php?id=12



Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.