Nagios es un software de código abierto para el monitoreo de sistemas y redes. Nagios puede ver la actividad de un host y sus servicios, y proporciona una advertencia/alerta si sucede algo malo en el servidor. Nagios puede ejecutarse en sistemas operativos Linux. En este momento estamos usando Ubuntu 15.04 para la instalación.
Requisitos
- Ubuntu 15.04 - 64 bits
- Acceso raíz/Sudo
Lo que haremos en este tutorial:
- Se necesita instalar el paquete - LAMP, etc.
- Configuración de usuarios y grupos
- Instalación de Nagios
- Configuración de Apache
- Prueba del servidor Nagios
- Agregar un host para monitorear
Paquete de instalación
Nagios requiere gcc/build-essential para la compilación, LAMP (Apache, PHP, MySQL) para la base web de Nagios y Sendmail para enviar alertas desde el servidor. Para instalar todos esos paquetes y algunos paquetes adicionales:
apt-get install apache2 libapache2-mod-php5 build-essential libgd2-xpm-dev libssl-dev sendmail-bin sendmail heirloom-mailx wget apache2-utils curl daemon apt-file libnet-snmp-perl libpq5 libsensors4 libsnmp-base libtalloc2 libtdb1 libwbclient0 samba-common samba-common-bin smbclient snmp whois mrtg libcgi-pm-perl librrds-perl libgd-gd2-perl libmysqlclient-dev libperl5.20 libmysqlclient18 libradiusclient-ng2
Configuración de usuarios y grupos
Para que se ejecute Nagios, debe crear un nuevo usuario para Nagios. Nombraremos al usuario "nagios" y además crea un grupo llamado "nagcmd" . Ahora agregamos el nuevo usuario al grupo como se muestra a continuación:
useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
Instalando Nagios
Paso 1 - Descargar y extraer
cd ~
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
tar -xzf nagios*.tar.gz
cd nagios-4.0.8/
Paso 2:Compilar Nagios
Antes de compilar Nagios, debe configurarlo con el usuario y el grupo que creó anteriormente.
./configure --with-nagios-group=nagios --with-command-group=nagcmd
Para obtener más información, utilice:./configure --help .
Ahora para instalar Nagios:
make all
sudo make install
sudo make install-commandmode
sudo make install-init
sudo make install-config
/usr/bin/install -c -m 644 sample-config/httpd.conf
/etc/apache2/sites-available/nagios.conf
Paso 3:instalación del complemento de Nagios
Descargue y extraiga el complemento de nagios:
cd ~
wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
tar -xzf nagios-plugins*.tar.gz
cd nagios-plugin*/
Por favor, haz lo anterior:
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
make && make install
Paso 4:configurar Nagios
Una vez completada la fase de instalación, puede encontrar la configuración predeterminada de Nagios en /usr/local/nagios/.
Ahora para configurar el contacto de nagios con su correo electrónico.
vim /usr/local/nagios/etc/nagios.cfg
Quite el comentario de la línea cfg_dir=/usr/local/nagios/etc/servers
y agregue una nueva carpeta llamada servidores:
mkdir -p /usr/local/nagios/etc/servers
El contacto de Nagios se puede configurar en el archivo contact.cfg. Para abrirlo usa:
vim /usr/local/nagios/etc/objects/contacts.cfg
Luego reemplace el correo electrónico predeterminado con su propio correo electrónico.
Configurando Apache
Paso 1:habilite los módulos de Apache
sudo a2enmod rewrite
sudo a2enmod cgi
Puede usar htpasswd para configurar un usuario nagiosadmin para la interfaz web de nagios
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
y escriba su contraseña.
Paso 2:habilitar el host virtual de Nagios
sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/
Paso 3:iniciar Apache y Nagios
/etc/init.d/apache2 restart
/etc/init.d/nagios start
Cuando se inicia Nagios, es posible que vea el siguiente error:
Starting nagios (via systemctl): nagios.serviceFailed
Y así es como solucionarlo:
cd /etc/init.d/
cp /etc/init.d/skeleton /etc/init.d/nagios
Ahora edite el archivo de Nagios:
vim /etc/init.d/nagios
... y agrega el siguiente código:
DESC="Nagios"
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock
Hazlo ejecutable e inicia Nagios:
chmod +x /etc/init.d/nagios
/etc/init.d/apache2 restart
/etc/init.d/nagios start
Prueba del servidor Nagios
Abra su navegador y acceda a la ip del servidor Nagios que se ha instalado. http://192.168.1.101/nagios.
Agregar un host a monitorear
En este tutorial, agregará un host Ubuntu para monitorear el servidor Nagios que hemos creado anteriormente.
Nagios Server IP : 192.168.1.101
Ubuntu Host IP : 192.168.1.102
Paso 1:conectarse al host de ubuntu
ssh [email protected]
Paso 2:instalar el servicio NRPE
sudo apt-get install nagios-nrpe-server nagios-plugins
Paso 3:configurar NRPE
Una vez completada la instalación, edite el archivo nrpe /etc/nagios/nrpe.cfg:
vim /etc/nagios/nrpe.cfg
... y agregue la IP del servidor Nagios 192.168.1.101 a server_address.
Paso 4:reiniciar NRPE
/etc/init.d/nagios-nrpe-server restart
Paso 5:agregar Ubuntu Host al servidor Nagios
Conéctese al servidor de Nagios:
ssh [email protected]
Luego cree un nuevo archivo para la configuración del host en /usr/local/nagios/etc/servers/.
vim /usr/local/nagios/etc/servers/ubuntu_host.cfg
Agregue las siguientes líneas:
# Ubuntu Host configuration file define host { use linux-server host_name ubuntu_host alias Ubuntu Host address 192.168.1.102 #Ubuntu host IP register 1 } define service { host_name ubuntu_host service_description PING check_command check_ping!100.0,20%!500.0,60% 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 ubuntu_host service_description Check Users check_command check_local_users!20!50 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 ubuntu_host service_description Local Disk check_command check_local_disk!20%!10%!/ 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 ubuntu_host service_description Check SSH check_command 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 }
Puede encontrar muchos check_command en el archivo /usr/local/nagios/etc/objects/commands.cfg. Consulte allí si desea agregar más servicios como DHCP, POP, etc.
Y ahora revisa la configuración:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
... para ver si la configuración es correcta.
Paso 6:reiniciar todos los servicios
En Ubuntu Host, inicie el servicio NRPE:
/etc/init.d/nagios-nrpe-server restart
... y en el servidor de Nagios, inicie Apache y Nagios:
/etc/init.d/apache2 restart
/etc/init.d/nagios restart
Paso 7:prueba del host de Ubuntu
Abra el servidor Nagios desde el navegador y vea ubuntu_host siendo monitoreado.
Conclusión
Nagios es una aplicación de código abierto para monitorear un sistema. Nagios ha sido ampliamente utilizado debido a la facilidad de configuración. Nagios es compatible con varios complementos, e incluso puede crear sus propios complementos. Mira aquí para más información.