Cómo instalar el software de monitorización Nagios en Ubuntu 20.04 LTS
Nagios es un software de código abierto para la monitorización de sistemas y redes. Nagios puede monitorizar la actividad de un host y sus servicios y proporciona un aviso/alerta si algo malo ocurre en el servidor. Nagios puede funcionar en sistemas operativos Linux, y nosotros utilizaremos el servidor Ubuntu 20.04.
En este tutorial, te mostraremos paso a paso la instalación de Nagios 4.4.x en Ubuntu 20.04. Instalaremos el núcleo de Nagios 4.4.x desde el código fuente, instalaremos los plugins nrpe y nagios, y luego añadiremos el host a monitorizar al servidor Nagios.
Requisitos previos
- 2 Servidores Ubuntu 20.04
- Servidor Nagios – nombre de host: nagios20 con una IP: 172.16.0.5
- Cliente Ubuntu – nombre de host: client01 con una IP: 172.16 .0.6
- Privilegios de root
Qué vamos a hacer
- Instalar las dependencias de los paquetes
- Instalar el núcleo de Nagios 4.4.6
- Instalar el plugin de Nagios y el plugin NRPE
- Añadir el host a monitorizar al servidor de Nagios
- Probar
Paso 1 – Instalar las dependencias de los paquetes
En primer lugar, actualizaremos el repositorio de Ubuntu e instalaremos algunas dependencias de los paquetes para la instalación de Nagios.
Actualiza el repositorio de Ubuntu utilizando el comando apt que aparece 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-php libgd-dev libmcrypt-dev make libssl-dev snmp libnet-snmp-perl gettext
Y ya has instalado las dependencias de los paquetes para el servidor Nagios.
Paso 2 – Instalar Nagios Core 4.4.6
En este paso, instalaremos la última versión estable Nagios Core 4.4.6. Y lo instalaremos manualmente desde la fuente.
– Descarga Nagios Core 4.4.6
Ve a tu directorio principal y descarga el código fuente de Nagios Core.
cd ~/
wget https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.6.tar.gz
Extrae el paquete Nagios y ve al directorio Nagios extraído.
tar -xf nagios-4.4.6.tar.gz
cd nagioscore-*/
– Compilar e instalar Nagios
Primero, compila el código fuente de Nagios y define la configuración del host virtual de Apache para Nagios.
sudo ./configure --with-httpd-conf=/etc/apache2/sites-enabled
sudo make all
Crea el usuario y el grupo de Nagios, y añade el usuario de Apache ‘www-data’ al grupo ‘nagios’.
sudo make install-groups-users
sudo usermod -a -G nagios www-data
Instala los binarios de Nagios, el script demonio de servicio y el modo de 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
Luego 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 de Apache.
systemctl restart apache2
Y ya has instalado el núcleo de Nagios 4.4.6.
– Crea el usuario nagiosadmin
Después de instalar el Nagios Core, vamos a añadir 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 fuerte.
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 de UFW.
Añade el puerto SSH y el puerto HTTP de Apache utilizando el comando ufw que aparece a continuación.
for svc in Apache ssh
do
ufw allow $svc
done
A continuación, inicia el servicio del cortafuegos UFW y añádelo al arranque del sistema.
ufw enable
Escribe«y» y el servicio de cortafuegos UFW se activará.
Ahora comprueba todas las reglas disponibles utilizando el siguiente comando.
ufw status numbered
Ahora tendrás los servicios SSH y Apache añadidos al cortafuegos UFW.
Y finalmente, habrás completado la instalación de Nagios Core en el servidor Ubuntu 20.04.
Paso 3 – Instalar los plugins de Nagios y el plugin NRPE
Después de instalar el núcleo de Nagios, vamos a instalar los plugins de Nagios y los plugins de NRPE.
Tanto los plugins de Nagios como los de NRPE están disponibles por defecto en el repositorio de Ubuntu. Puedes instalar esos paquetes con el comando apt que aparece a continuación.
sudo apt install monitoring-plugins nagios-nrpe-plugin
Una vez completada la instalación, ve al directorio de instalación de nagios «/usr/local/nagios/etc» y crea un nuevo directorio para almacenar la configuración de todos los hosts del servidor.
cd /usr/local/nagios/etc
mkdir -p /usr/local/nagios/etc/servers
A continuación, edita la configuración de Nagios ‘nagios.cfg’ utilizando el editor vim.
vim nagios.cfg
Descomenta la opción ‘cfg_dir’ que se utilizará para almacenar todas las configuraciones de los servidores.
cfg_dir=/usr/local/nagios/etc/servers
Guarda y cierra.
A continuación, edita el archivo de configuración «resource.cfg» y define la ruta de los archivos binarios de los plugins de monitorización de Nagios.
vim resource.cfg
Define la ruta de los Plugins de Monitorización de Nagios cambiando la configuración por defecto como se indica a continuación.
$USER1$=/usr/lib/nagios/plugins
Guarda y cierra.
Después, añade los contactos de correo electrónico 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.
Ahora define el comando nrpe check editando el archivo de configuración «objects/commands.cfg».
vim objects/commands.cfg
Añade 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, y la configuración de Nagioscore se habrá completado.
A continuación, inicia el servicio Nagios y añádelo al arranque del sistema.
systemctl start nagios
systemctl enable nagios
El servicio Nagios está en marcha, compruébalo con el siguiente comando.
systemctl status nagios
A continuación se muestra el resultado.
El resultado es que el servicio Nagios está en funcionamiento. Ahora tenemos que reiniciar el servicio Apache para aplicar una nueva configuración de Nagios.
systemctl restart apache2
Y la configuración de Nagios se ha completado.
Abre tu navegador web y escribe la dirección IP del servidor siguiendo la ruta URL «nagios».
http://172.16.0.5/nagios/
Accede con el usuario «nagiosadmin» y escribe tu contraseña.
Y obtendrás el panel de control de Nagios como el que aparece a continuación.
Como resultado, has instalado Nagios en el servidor Ubuntu 20.04. Y podrás añadir hosts al servidor Nagios.
Paso 5 – Añadir el host Linux al monitor
En este paso, añadiremos el servidor Ubuntu con el nombre de host «client01» y la dirección IP «172.16.0.6» 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 entrado, actualiza el repositorio de Ubuntu e instala los plugins de Nagios y el servidor NRPE.
sudo apt update
sudo apt install nagios-nrpe-server monitoring-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=172.16.0.6
En la línea «allowed_hosts», añade la dirección IP del servidor de Nagios «172.16.0.5».
allowed_hosts=127.0.0.1,::1,172.16.0.5
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 172.16.0.6 -w 100.0,20% -c 500.0,60% -p 5
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh -4 172.16.0.6
command[check_http]=/usr/lib/nagios/plugins/check_http -I 172.16.0.6
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 NRPE de Nagios ya está en marcha.
Comprueba el servicio NRPE con el siguiente comando.
systemctl status nagios-nrpe-server
El servicio NRPE está en funcionamiento.
A continuación, vuelve al servidor Nagios y comprueba el servidor NRPE «client01».
/usr/lib/nagios/plugins/check_nrpe -H 172.16.0.6
/usr/lib/nagios/plugins/check_nrpe -H 172.16.0.6 -c check_ping
Y obtendrás el resultado que se muestra a continuación.
Y habrás instalado el Servidor NRPE de Nagios y los Plugins de Nagios en el host «cliente01».
– Añadir la configuración de los hosts al servidor Nagios
Vuelve 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 172.16.0.6
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
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 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
Guarda y cierra.
Ahora reinicia el Servidor Nagios.
systemctl restart nagios
Paso 5 – Prueba
Vuelve a tu navegador y espera unos minutos.
Haz clic en el menú«Hosts» y verás que se ha añadido el «cliente01».
A continuación se muestran los detalles de la monitorización del servidor «client01».
Ahora has añadido el host a monitorizar al servidor Nagios.
Y la instalación de Nagios 4.4.6 en el servidor Ubuntu 20.04 se ha completado con éxito.