Cómo instalar el software de monitorización Nagios en Ubuntu

Nagios es un software de código abierto para la monitorización de sistemas y redes. Nagios puede supervisar la actividad de un host y sus servicios, y proporciona un aviso/alerta si ocurre algo malo en el servidor. Nagios puede ejecutarse en sistemas operativos Linux, y nosotros utilizaremos el servidor Ubuntu 18.04.

En este tutorial, te mostraremos paso a paso cómo instalar Nagios 4.4.x en Ubuntu 18.04. Instalaremos el Nagios Core 4.4.x desde el código fuente, instalaremos los plugins nrpe y nagios, y después añadiremos el host a monitorizar al servidor Nagios.

Requisitos previos

  • 2 servidores Ubuntu 18.04
    • Servidor Nagios – nombre de host: hakase-nagios con una IP: 10.5.5.11
    • Cliente Ubuntu – nombre de host: client01 con una IP: 10.5 .5.12
  • Privilegios de root

Qué vamos a hacer

  • Instalar paquetes Dependencias
  • Instalar Nagios Core 4.4.5
  • Instalar el Plugin Nagios y el Plugin NRPE
  • Añadir el Host a Monitorizar al Servidor Nagios
  • Probar

Paso 1 – Instalar dependencias de paquetes

En primer lugar, actualizaremos el repositorio de Ubuntu e instalaremos algunas dependencias de paquetes para la instalación de Nagios.

Actualiza el repositorio de Ubuntu utilizando el comando apt que se indica a continuación.

sudo apt update

Después, instala las dependencias de los paquetes para la instalación de Nagios.

sudo apt install -y autoconf bc gawk dc build-essential gcc libc6 make wget unzip apache2 php libapache2-mod-php7.2 libgd-dev libmcrypt-dev make libssl-dev snmp libnet-snmp-perl gettext

Y ya has instalado las dependencias de paquetes para el servidor Nagios.

Paso 2 – Instalar Nagios Core 4.4.5

En este paso, instalaremos la última versión estable Nagios Core 4.4.5. Y la instalaremos manualmente desde la fuente.

Descarga Nagios Core 4.4.5

Ve a tu directorio de inicio y descarga el código fuente de Nagios Core.

cd ~/
wget https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.5.tar.gz

Extrae el paquete Nagios y ve al directorio Nagios extraído.

tar xzf nagios-4.4.5.tar.gz
cd nagioscore-nagios-4.4.5/

Compilar e instalar Nagios

Primero, compila el código fuente de Nagios y define la configuración del host virtual Apache para Nagios.

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

Compilar Nagios

Crea el usuario y el grupo Nagios, y añade el usuario Apache ‘www-data’ al grupo ‘nagios’.

sudo make install-groups-users
sudo usermod -a -G nagios www-data

Instalar grupos y usuarios

Instala los binarios de Nagios, el script demonio de servicio y el modo comando.

sudo make install
sudo make install-daemoninit
sudo make install-commandmode

Después, instala la configuración del script de ejemplo.

sudo make install-config

A continuación, instala la configuración de Apache para Nagios y activa los módulos mod_rewrite y mode_cgi.

sudo make install-webconf
sudo a2enmod rewrite cgi

Ahora reinicia el servicio Apache.

systemctl restart apache2

Y ya tienes instalado el Nagios Core 4.4.5.

Instalar la configuración de Nagios

Crea el usuario nagiosadmin

Después de instalar el Nagios Core, añadiremos la autenticación básica para acceder al panel de control de Nagios. Y utilizaremos la autenticación básica de Apache.

Crea una nueva autenticación básica de apache para el usuario «nagiosadmin».

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

Escribe tu contraseña segura.

Establecer contraseña para Nagios admin

Y habrás creado un nuevo usuario «nagiosadmin» para la autenticación del panel de control de Nagios.

Configurar el cortafuegos UFW

Para la configuración del cortafuegos, tendrás que añadir el servicio Apache y el puerto del servidor Nagios al cortafuegos UFW.

Añade el puerto HTTP de Apache y el puerto de Nagios » utilizando el comando ufw que se indica a continuación.

sudo ufw allow Apache

Ahora vuelve a cargar el cortafuegos UFW.

sudo ufw reload

Y ya has completado la instalación de Nagios Core en el servidor Ubuntu 18.04.

Configurar el cortafuegos UFW

Paso 3 – Instalar los Plugins de Nagios y el Plugin NRPE

Después de instalar el Nagios Core, vamos a instalar los Plugins Nagios y los Plugins NRPE.

Tanto los plugins de Nagios como los de NRPE están disponibles por defecto en el repositorio de Ubuntu. Puedes instalar esos paquetes utilizando el comando apt que aparece a continuación.

sudo apt install nagios-plugins nagios-nrpe-plugin

Una vez completada la instalación, ve al directorio de instalación de nagios «/usr/local/nagios» y edita el archivo de configuración «nagios.cfg».

cd /usr/local/nagios/
vim nagios.cfg

Descomenta el directorio de configuración adicional para servidores.

cfg_dir=/usr/local/nagios/etc/servers

Guárdalo y ciérralo.

Ahora crea un nuevo directorio «/usr/local/nagios/etc/servers» que se utilizará para almacenar la configuración del monitor de host.

mkdir -p /usr/local/nagios/etc/servers

Después, ve al directorio «/usr/local/nagios/etc/» y edita el archivo de configuración «resurces.cfg».

cd /usr/local/nagios/etc/
vim resources.cfg

Cambia el directorio por defecto para los plugins de Nagios como se indica a continuación.

$USER1$=/usr/lib/nagios/plugins

Guárdalo y ciérralo.

A continuación, añade los contactos del administrador de nagios editando el archivo de configuración «objects/contacts.cfg».

vim objects/contacts.cfg

Cambia la dirección de correo electrónico por la tuya.

define contact{
        ......
        email             [email protected]
}

Guarda y cierra.

A continuación, define el comando nrpe check editando el archivo de configuración «objects/commands.cfg».

vim objects/commands.cfg

Pega la siguiente configuración al final de la línea.

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

Guarda y cierra.

Ahora inicia el servicio Nagios y añádelo al arranque del sistema.

systemctl start nagios
systemctl enable nagios

Configura nagios, luego reinícialo para aplicar los cambios

El servicio Nagios está en marcha, compruébalo utilizando el siguiente comando.

systemctl status nagios

A continuación se muestra el resultado.

Comprueba el estado de nagios

A continuación, tenemos que reiniciar el servicio Apache para aplicar la nueva configuración de Nagios.

systemctl restart apache2

Después, abre tu navegador web y escribe la dirección IP del servidor siguiendo la ruta URL «nagios».

http://10.5.5.11/nagios/

Accede con el usuario «nagiosadmin» y escribe tu contraseña.

Inicio de sesión en Nagios

Y obtendrás el Panel de Control de Nagios como se muestra a continuación.

Panel Nagios

Como resultado, has instalado Nagios en el servidor Ubuntu 18.04. Y ya puedes añadir hosts al servidor Nagios.

Paso 5 – Añadir host Linux al Monitor

En este paso, añadiremos el servidor Ubuntu con el nombre de host «client01» y la dirección IP «10.5.5.12» al servidor Nagios.

Instalar el servidor NRPE en el servidor «client01

Inicia sesión en el servidor «client01» utilizando tu ssh.

ssh [email protected]

Una vez que hayas iniciado sesión, actualiza el repositorio de Ubuntu e instala los Plugins de Nagios y el Servidor NRPE.

sudo apt update
sudo apt install nagios-nrpe-server nagios-plugins

A continuación, ve al directorio de instalación de NRPE «/etc/nagios» y edita el archivo de configuración «nrpe.cfg».

cd /etc/nagios/
vim nrpe.cfg

Descomenta la línea «server_address» y cambia el valor por la dirección IP «client01».

server_address=10.5.5.12

En la línea «allowed_hosts», añade la dirección IP del servidor Nagios «10.5.5.11».

allowed_hosts=127.0.0.1,::1,10.5.5.11

Guarda y cierra.

A continuación, edita la configuración «nrpe_local.cfg».

vim nrpe_local.cfg

Cambia la dirección IP por la dirección IP «client01», y pega la configuración en ella.

command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ping]=/usr/lib/nagios/plugins/check_ping -H 10.5.5.12 -w 100.0,20% -c 500.0,60% -p 5
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh -4 10.5.5.12
command[check_http]=/usr/lib/nagios/plugins/check_http -I 10.5.5.12
command[check_apt]=/usr/lib/nagios/plugins/check_apt

Guarda y cierra.

Ahora reinicia el servicio NRPE y añádelo al arranque del sistema.

systemctl restart nagios-nrpe-server
systemctl enable nagios-nrpe-server

Y el servidor Nagios NRPE ya está en marcha.

Instalar NRPE

Comprueba el servicio NRPE utilizando el siguiente comando.

systemctl status nagios-nrpe-server

El servicio NRPE está en funcionamiento.

El servidor NRPE está activo y en funcionamiento

A continuación, vuelve al Servidor Nagios y comprueba el servidor NRPE «client01».

/usr/lib/nagios/plugins/check_nrpe -H 10.5.5.12
/usr/lib/nagios/plugins/check_nrpe -H 10.5.5.12 -c check_ping

Y obtendrás el resultado que se muestra a continuación.

Comprobar NRPE

Y habrás instalado el Servidor Nagios NRPE y los Plugins Nagios en el host «client01».

Añadir configuración de hosts al servidor Nagios

De vuelta al terminal del servidor Nagios, ve al directorio «/usr/local/nagios/etc» y crea una nueva configuración «server/client01.cfg».

cd /usr/local/nagios/etc
vim servers/client01.cfg

Cambia la dirección IP y el nombre de host por los tuyos y pega la configuración en él.

# Ubuntu Host configuration file1

define host {
use                          linux-server
host_name                    client01
alias                        Ubuntu Host
address                      10.5.5.12
register                     1
}

define service {
host_name                       client01
service_description             PING
check_command                   check_nrpe!check_ping
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check Users
check_command                   check_nrpe!check_users
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check SSH
check_command                   check_nrpe!check_ssh
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check Root / Disk
check_command                   check_nrpe!check_root
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check APT Update
check_command                   check_nrpe!check_apt
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check HTTP
check_command                   check_nrpe!check_http
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24×7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24×7
notifications_enabled           1
register                        1
}

Guarda y cierra.

Ahora reinicia el Servidor Nagios.

systemctl restart nagios

Configure Nagios Client

Paso 5 – Probando

Vuelve a tu navegador y espera unos minutos.

Haz clic en el menú«Hosts» y verás que se ha añadido el «cliente01».

Probar Nagios

A continuación se muestran los detalles de la monitorización del servidor «client01».

Otra prueba de Nagios

Ahora ya has añadido el Host a monitorizar al Servidor Nagios.

Y la instalación de Nagios 4.4.5 en el Servidor Ubuntu 18.04 se ha completado con éxito.

Referencia

Scroll al inicio