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 desde 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 nodos y enviar alertas por correo o SMS para notificar a los administradores en caso de servicios críticos en una red, como SMTP, HTTP, SSH, FTP y otro falla.
Requisitos
- 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: Instalar 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 MySQL componente de base de datos 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 un usuario y grupo del sistema nagios y agregue una cuenta de nagios al usuario www-data de Apache, emitiendo lo siguiente 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 obtenga la última versión del archivo fuente estable de Nagios Core emitiendo el siguiente 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 enumerar el contenido del directorio nagios.
tar xzf nagios-4.4.6.tar.gz
cd nagios-4.4.6/
ls
Salida de muestra
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 a partir de 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
Salida de muestra
*** 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 de Nagios emitiendo el siguiente comando.
make all
8. Ahora, instale los archivos binarios, scripts CGI y archivos HTML de Nagios emitiendo el siguiente comando.
make install
9. A continuación, instale los archivos de configuración del modo de comando externo y de inicio del demonio de Nagios y asegúrese de habilitar el demonio 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 necesaria para que el servidor Apache inicie 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 de 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 o nombre de dominio de su servidor 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, navegue hasta el menú Estado actual -> Hosts donde notará que se muestran algunos errores para el host localhost, como se ilustra en la siguiente captura de pantalla. 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 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 archivo tar del código fuente de los complementos de Nagios y cambie la ruta al directorio de complementos de nagios extraído 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 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/. Incluya 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 todos los servicios de host ahora son verificados por los complementos de Nagios.
A partir del 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, emita los siguientes comandos para habilitar las configuraciones SSL de Apache y reinicie el demonio Apache para reflejar los cambios.
a2enmod ssl
a2ensite default-ssl.conf
systemctl restart apache2
24. Después de haber habilitado 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.