Cómo instalar Nagios 4 en Ubuntu y Debian


En este tema, aprenderemos cómo instalar y configurar la última versión oficial de Nagios Core a partir de fuentes en servidores Debian y Ubuntu.

Nagios Core es una aplicación gratuita de monitoreo de red de código abierto diseñada para monitorear aplicaciones de red, dispositivos y sus servicios relacionados y en una red.

Nagios puede monitorear de forma remota parámetros específicos del sistema operativo a través de agentes implementados en los nodos y enviar alertas por correo o SMS para notificar a los administradores en caso de fallas en servicios críticos en una red, como SMTP, HTTP, SSH, FTP y otros.

  • Instalación del servidor Ubuntu 20.04/18.04
  • Instalación mínima de Ubuntu 16.04
  • Instalación mínima de Debian 10
  • Instalación mínima de Debian 9

Paso 1: instale los requisitos previos para Nagios

1. Antes de instalar Nagios Core desde fuentes en Ubuntu o Debian, primero instale los siguientes componentes de la pila LAMP en su sistema, sin el componente de base de datos MySQL RDBMS, emitiendo el siguiente comando.

# apt install apache2 libapache2-mod-php php

2. En el siguiente paso, instale las siguientes dependencias del sistema y utilidades necesarias para compilar e instalar Nagios Core desde las fuentes, emitiendo el siguiente comando.

# apt install wget unzip zip autoconf gcc libc6 make apache2-utils libgd-dev

Paso 2: Instale Nagios 4 Core en Ubuntu y Debian

3. En el primer paso, cree el usuario y el grupo del sistema nagios y agregue la cuenta nagios al usuario de www-data de Apache, emitiendo los siguientes comandos.

# useradd nagios
# usermod -a -G nagios www-data

4. Después de que todas las dependencias, paquetes y requisitos del sistema para compilar Nagios a partir de fuentes estén presentes en su sistema, vaya a la página web de Nagios y tome el comando wget.

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

5. A continuación, extraiga el tarball de Nagios e ingrese al directorio de nagios extraído, con los siguientes comandos. Emita el comando ls para listar el contenido del directorio de nagios.

# tar xzf nagios-4.4.6.tar.gz 
# cd nagios-4.4.6/
# ls
total 600
-rwxrwxr-x  1 root root    346 Apr 28 20:48 aclocal.m4
drwxrwxr-x  2 root root   4096 Apr 28 20:48 autoconf-macros
drwxrwxr-x  2 root root   4096 Apr 28 20:48 base
drwxrwxr-x  2 root root   4096 Apr 28 20:48 cgi
-rw-rw-r--  1 root root  32590 Apr 28 20:48 Changelog
drwxrwxr-x  2 root root   4096 Apr 28 20:48 common
-rwxrwxr-x  1 root root  43765 Apr 28 20:48 config.guess
-rwxrwxr-x  1 root root  36345 Apr 28 20:48 config.sub
-rwxrwxr-x  1 root root 246354 Apr 28 20:48 configure
-rw-rw-r--  1 root root  29812 Apr 28 20:48 configure.ac
drwxrwxr-x  5 root root   4096 Apr 28 20:48 contrib
-rw-rw-r--  1 root root   6291 Apr 28 20:48 CONTRIBUTING.md
drwxrwxr-x  2 root root   4096 Apr 28 20:48 docs
-rw-rw-r--  1 root root    886 Apr 28 20:48 doxy.conf
-rwxrwxr-x  1 root root   7025 Apr 28 20:48 functions
drwxrwxr-x 11 root root   4096 Apr 28 20:48 html
drwxrwxr-x  2 root root   4096 Apr 28 20:48 include
-rwxrwxr-x  1 root root     77 Apr 28 20:48 indent-all.sh
-rwxrwxr-x  1 root root    161 Apr 28 20:48 indent.sh
-rw-rw-r--  1 root root    422 Apr 28 20:48 INSTALLING
...

6. Ahora, comience a compilar Nagios desde las fuentes emitiendo los siguientes comandos. Asegúrese de configurar Nagios con la configuración de directorio habilitada para sitios Apache emitiendo el siguiente comando.

# ./configure --with-httpd-conf=/etc/apache2/sites-enabled
*** Configuration summary for nagios 4.4.6 2020-04-28 ***:

 General Options:
 -------------------------
        Nagios executable:  nagios
        Nagios user/group:  nagios,nagios
       Command user/group:  nagios,nagios
             Event Broker:  yes
        Install ${prefix}:  /usr/local/nagios
    Install ${includedir}:  /usr/local/nagios/include/nagios
                Lock file:  /run/nagios.lock
   Check result directory:  /usr/local/nagios/var/spool/checkresults
           Init directory:  /lib/systemd/system
  Apache conf.d directory:  /etc/apache2/sites-enabled
             Mail program:  /bin/mail
                  Host OS:  linux-gnu
          IOBroker Method:  epoll

 Web Interface Options:
 ------------------------
                 HTML URL:  http://localhost/nagios/
                  CGI URL:  http://localhost/nagios/cgi-bin/
 Traceroute (used by WAP):  


Review the options above for accuracy.  If they look okay,
type 'make all' to compile the main program and CGIs.

7. En el siguiente paso, cree archivos Nagios emitiendo el siguiente comando.

# make all

8. Ahora, instale los archivos binarios de Nagios, los scripts CGI y los archivos HTML emitiendo el siguiente comando.

# make install

9. A continuación, instale el daemon de Nagios init y los archivos de configuración del modo de comando externo y asegúrese de habilitar el daemon de nagios en todo el sistema emitiendo los siguientes comandos.

# make install-init
# make install-commandmode
# systemctl enable nagios.service

10. A continuación, ejecute el siguiente comando para instalar algunos archivos de configuración de muestra de Nagios que Nagios necesita para ejecutarse correctamente emitiendo el siguiente comando.

# make install-config

11. Además, instale el archivo de configuración de Nagios para el servidor web Apacahe, que se puede encontrar en el directorio/etc/apacahe2/sites-enabled /, ejecutando el siguiente comando.

# make install-webconf

12. A continuación, cree una cuenta nagiosadmin y una contraseña para esta cuenta que el servidor Apache necesita para iniciar sesión en el panel web de Nagios emitiendo el siguiente comando.

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

13. Para permitir que el servidor HTTP Apache ejecute scripts cgi de Nagios y acceda al panel de administración de Nagios a través de HTTP, primero habilite el módulo cgi en Apache y luego reinicie el servicio Apache e inicie y habilite el demonio Nagios en todo el sistema emitiendo los siguientes comandos.

# a2enmod cgi
# systemctl restart apache2
# systemctl start nagios
# systemctl enable nagios

14. Finalmente, inicie sesión en la Interfaz Web de Nagios apuntando un navegador a la dirección IP de su servidor o al nombre de dominio en la siguiente dirección URL a través del protocolo HTTP. Inicie sesión en Nagios con el usuario nagiosadmin y configure la contraseña con el script htpasswd.

http://IP-Address/nagios
OR
http://DOMAIN/nagios

15. Para ver el estado de sus hosts, vaya a Estado actual -> menú Hosts, donde notará que se muestran algunos errores para el host localhost, como se ilustra en la captura de pantalla siguiente. El error aparece porque Nagios no tiene complementos instalados para verificar el estado de los hosts y los servicios.

Paso 3: Instale los complementos de Nagios en Ubuntu y Debian

16. Para compilar e instalar los complementos de Nagios desde fuentes en Debian o Ubuntu, en la primera etapa, instale las siguientes dependencias en su sistema, 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 libmysqlclient-dev libdbi-dev 

17. A continuación, visite la página de repositorios de complementos de Nagios y descargue el último código fuente tarball emitiendo el siguiente comando.

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

18. Continúe y extraiga el código fuente del código fuente de Nagios Plugins y cambie la ruta al directorio extraído de nagios-plugins ejecutando los siguientes comandos.

# tar xfz release-2.3.3.tar.gz 
# cd nagios-plugins-release-2.3.3/

19. Ahora, comience a compilar e instalar los complementos de Nagios desde las fuentes, ejecutando la siguiente serie de comandos en la consola de su servidor.

# ./tools/setup 
# ./configure 
# make
# make install

20. Los complementos de Nagios compilados e instalados se pueden ubicar en el directorio/usr/local/nagios/libexec /. Enumere este directorio para ver todos los complementos disponibles en su sistema.

# ls /usr/local/nagios/libexec/

21. Finalmente, reinicie el demonio de Nagios para aplicar los complementos instalados, emitiendo el siguiente comando.

# systemctl restart nagios.service

22. A continuación, inicie sesión en el panel web de Nagios y vaya al menú Estado actual -> Servicios y debería notar que los complementos de Nagios comprueban todos los servicios de los hosts.

En el código de color, debería ver el estado actual de los servicios: el color verde es para el estado OK, el amarillo para Advertencia y el rojo para el estado crítico.

23. Finalmente, para acceder a la interfaz web de administración de Nagios a través del protocolo HTTPS, ejecute los siguientes comandos para habilitar las configuraciones de Apache SSL y reinicie el demonio Apache para reflejar los cambios.

# a2enmod ssl 
# a2ensite default-ssl.conf
# systemctl restart apache2

24. Después de habilitar las configuraciones de Apache SSL, abra el archivo /etc/apache2/sites-enabled/000-default.conf para editarlo y agregue el siguiente bloque de código después de la declaración DocumentRoot como se muestra en el siguiente extracto.

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

25. Debe reiniciar el demonio Apache para aplicar las reglas configuradas, emitiendo el siguiente comando.

# systemctl restart apache2.service 

26. Finalmente, actualice el navegador para ser redirigido al panel de administración de Nagios a través del protocolo HTTPS. Acepte el mensaje de deseo que se muestra en el navegador e inicie sesión en Nagios nuevamente con sus credenciales.

¡Felicidades! Ha instalado y configurado con éxito el sistema de monitoreo Nagios Core desde fuentes en el servidor Ubuntu o Debian.