Cómo instalé Nagios en EC2 y creé mi propio plugin de monitoreo de disco
En este artículo explico de forma práctica cómo desplegar Nagios Core en una instancia EC2 con Ubuntu, configurar hosts y servicios y crear un plugin personalizado para monitorizar uso de disco. Además presento a Q2BSTUDIO, empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial, ciberseguridad, servicios cloud aws y azure y soluciones de inteligencia de negocio como Power BI. Si buscas desarrollo de aplicaciones a medida o software a medida visita nuestra página de desarrollo de aplicaciones y para proyectos en la nube revisa servicios cloud AWS y Azure.
Paso 1 Lanzar instancia EC2 Ubuntu 22.04 con el puerto 80 abierto en el grupo de seguridad para acceder a la interfaz web.
Paso 2 Conectar por SSH desde tu equipo: ssh -i tuclave.pem ubuntu@EC2_PUBLIC_IP
Paso 3 Actualizar e instalar paquetes necesarios: sudo apt update && sudo apt upgrade -y ; sudo apt install -y build-essential libgd-dev openssl libssl-dev unzip apache2 php libapache2-mod-php
Paso 4 Crear usuario y grupos para Nagios: sudo useradd nagios ; sudo groupadd nagcmd ; sudo usermod -aG nagcmd nagios ; sudo usermod -aG nagcmd www-data
Paso 5 Descargar y extraer Nagios Core desde los releases oficiales, por ejemplo con wget apuntando a la versión deseada y descomprimiendo el tar.gz en /tmp
Paso 6 Compilar e instalar Nagios: ejecutar ./configure --with-command-group=nagcmd ; make all ; sudo make install ; sudo make install-init ; sudo make install-commandmode ; sudo make install-config ; sudo make install-webconf ; sudo a2enmod cgi ; sudo systemctl restart apache2
Paso 7 Crear usuario administrador para la interfaz web: sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin ; luego reiniciar apache si es necesario
Paso 8 Instalar los plugins de Nagios: descargar nagios-plugins desde su repositorio, descomprimir, configurar con --with-nagios-user=nagios --with-nagios-group=nagcmd, compilar e instalar con make y sudo make install
Paso 9 Iniciar y habilitar el servicio Nagios: sudo systemctl start nagios ; sudo systemctl enable nagios ; comprobar estado con sudo systemctl status nagios ; la interfaz estará en https://EC2_PUBLIC_IP/nagios con usuario nagiosadmin
Paso 10 Crear archivo de configuración personalizado: crear por ejemplo /usr/local/nagios/etc/objects/nagios_demo.cfg y añadir la referencia en /usr/local/nagios/etc/nagios.cfg mediante la línea cfg_file=/usr/local/nagios/etc/objects/nagios_demo.cfg
Paso 11 Definir hosts y servicios en nagios_demo.cfg. Ejemplo de dos hosts usando plantillas linux-server y definiendo servicios como SSH y Ping. Puedes incluir varias definiciones de host y servicio en el mismo archivo.
Paso 12 Crear un plugin personalizado para disco. En lugar de mostrar un script literal, aquí describo el algoritmo recomendado: crear un script shell en /usr/local/nagios/libexec/check_disk_custom.sh que obtenga el porcentaje de uso del disco raíz con df, convierta la salida a un número entero, reciba dos parámetros de umbral para aviso y crítico, compare el valor actual con esos umbrales y devuelva el estado y una salida en formato compatible con Nagios incluyendo una salida de rendimiento usage=valor. Marcar el script como ejecutable con sudo chmod +x /usr/local/nagios/libexec/check_disk_custom.sh
Paso 13 Registrar el comando personalizado en el archivo de comandos de Nagios, por ejemplo en /usr/local/nagios/etc/objects/commands.cfg añadiendo una entrada define command que invoque /usr/local/nagios/libexec/check_disk_custom.sh con dos argumentos para warning y critical
Paso 14 Crear la entrada de servicio para monitorizar disco en nagios_demo.cfg usando el comando definido, por ejemplo check_disk_custom con umbrales adecuados para warning y critical
Paso 15 Validar la configuración con sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg y, si no hay errores, reiniciar Nagios con sudo systemctl restart nagios
Resultado final La interfaz de Nagios mostrará estado de los hosts, monitorización de SSH, pruebas de ping/HTTP y el monitoreo de disco usando tu plugin personalizado con alertas en estado WARNING y CRITICAL. URL de acceso https://EC2_PUBLIC_IP/nagios
Sobre Q2BSTUDIO Q2BSTUDIO es una empresa de desarrollo de software a medida y aplicaciones a medida con experiencia en inteligencia artificial, seguridad informática y servicios cloud. Ofrecemos soluciones integrales que incluyen servicios de ciberseguridad y pentesting, desarrollo de agentes IA y soluciones de ia para empresas, además de proyectos de inteligencia de negocio y Power BI. Si quieres impulsar un proyecto seguro y escalable en la nube o explorar agentes IA y analítica con Power BI contacta con nuestro equipo.
Palabras clave integradas para SEO aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi


.jpg)
.jpg)
.jpg)
.jpg)