Al administrar sistemas operativos Linux, en este caso Debian 9, debemos ser conscientes del potencial de cada uno de ellos y de las cientos de herramientas que se encuentran disponibles para sacar la máxima productividad de este y contar con un mejor control sobre cada proceso y servicio que afecte a la organización.
Es por esto que en esta ocasión Solvetic hablará de Monit, la cual es una herramienta libre para monitorear procesos con diversas funcionalidades.
Al usar Monit tendremos la oportunidad de realizar el proceso a través de línea de comandos o navegador web para los que desean un entorno gráfico. Además al usar Monit, como administradores o personal de soporte, podremos supervisar archivos, directorios y dispositivos para cambios de tamaño y permisos asignados.
Algunas de las características mas sobresalientes de Monit son:
- Capacidad de supervisar y monitorear servicios como Apache, Sendmail, Nginx, FTP, SSH y MySQL.
- Monitorear el puerto TCP / IP de los hosts remotos
- Generación de alertas cuando sea presentada una condición de error crítico o estado de recuperación.
- Posibilidad de comprobar la carga del sistema, el uso de la CPU, el uso de RAM, el disco, los cambios de tamaño de archivo, los cambios de permisos, entre otros parámetros.
- Analiza y supervisa protocolos HTTP, FTP, SSH, POP, IMAP, LDAP, IMAP y SMTM
- Interfaz de uso simple
- Registro a través de syslog
- Puede iniciar, detener o matar un proceso
A continuación veremos como instalar y configurar Monit en Debian 9.
1. Cómo actualizar el sistema operativo Debian 9
El primer paso consiste en actualizar los paquetes de Debian 9 y para ello ejecutaremos los siguientes comandos:
apt-get update -y apt-get upgrade -y
Una vez que el sistema será actualizado procedemos a su reinicio ejecutando el comando reboot para aplicar los cambios.
2. Cómo instalar Monit en Debian 9
Una vez actualizado el sistema procedemos a instalar Monit ejecutando la siguiente línea:
apt-get install monit -y
Una vez instalado Monit procedemos a ejecutar las siguientes líneas para iniciar Monit y configurarlo en el arranque de Debian 9:
systemctl start monit systemctl enable monit

3. Cómo comprobar el estado de Monit
Podemos ver el estado actual de Monit en Debian 9 ejecutando la siguiente línea:
systemctl status monitEl resultado será el siguiente. Podemos ver que se encuentra activo.
4. Cómo configurar Monit en Debian 9
El siguiente paso consiste en acceder al directorio /etc/monit/ donde se encuentra alojada la configuración de Monit, el directorio de configuración de los servidores y procesos se encuentran en /etc/monit/conf-available/.
Monit cuenta con una interfaz web integrada, pero está desactivado de forma predeterminada por lo cual accederemos al directorio /etc/monit/ ejecutando lo siguiente:
nano /etc/monit/monitrcAllí debemos ubicar las siguientes líneas:
# set httpd port 2812 and # use address localhost # only accept connection from localhost # allow localhost # allow localhost to connect to the server and # allow admin:monit # require user 'admin' with password 'monit'
Lo ajustaremos a lo siguiente:
set httpd port 2812 and allow admin:monit # require user 'admin' with password 'monit'
Allí debemos remover las líneas respectivas y desconentar las líneas actuales.
Guardamos los cambios en el archivo usando la combinación de teclas siguiente:
Ctrl + O
Salimos del editor usando la combinación de teclas:
Ctrl + X
Reiniciamos el servicio ejecutando lo siguiente:
systemctl restart monitUna vez reiniciado el servicio podemos verificar el estado del servicio ejecutando la siguiente línea:
netstat -ant | grep :2812
En caso de no contar con netstat instalado debemos ejecutar el siguiente comando:
apt-get install net-tools
Al ejecutar netstat este será el resultado: Podemos ver que el puerto está abierto.
5. Cómo acceder a Monit en Debian 9
Una vez configurados estos valores procedemos a ir a el navegador e ingresar la siguiente sintaxis:
http:Direccion_IP:2812 o bien localhost:2812Al acceder debemos ingresar las siguientes credenciales:
- Usuario: admin
- Contraseña: monit
Este será el entorno inicial de Monit en Debian 9:
Allí podemos ver detalles como:
- Nombre del equipo
- Estado del servicio
- Carga
- Uso de CPU
- Uso de memoria RAM
- Uso de memoria Swap
Podremos comprobar el estado de Monit ejecutando el siguiente comando en la terminal:
monit statusEl resultado será el siguiente:
6. Cómo añadir servicios para monitorear con Monit
Con la interfaz de Monit configurada podremos agregar servicios como Apache, Proftpd y Rsyslog para su respectivo monitoreo.
Para visualizar las plantillas de servicios que Monit trae pro defecto debemos ir al siguiente directorio:
/etc/monit/conf-available/
7. Cómo hacer Monitoreo de Apache (Linux)
Podemos encontrar la plantilla de Apache dentro de la configuiracion de Monit pero será necesario habilitarla, para ello ejecutaremos la siguiente línea:
ln -s /etc/monit/conf-available/apache2 /etc/monit/conf-enabled/Finalmente reiniciamos el servicio:
systemctl restart monit
8. Cómo hacer monitoreo de Rsyslog
Para habilitar el monitoreo de este servicio ejecutaremos la siguiente línea:
ln -s /etc/monit/conf-available/rsyslog /etc/monit/conf-enabled/De nuevo reiniciamos el servicio de Monit:
systemctl restart monit
9. Cómo hacer monitoreo de Proftpd
Esta plantilla no se encuentra disponible por defecto en Monit por lo cual debemos crear un nuevo archivo dentro de /etc/monit/conf-available/, para ello ejecutamos lo siguiente:
nano /etc/monit/conf-available/proftpdDentro de este nuevo archivo pegaremos lo siguiente:
check process proftpd with pidfile /var/run/proftpd.pid start program = "/etc/init.d/proftpd start" stop program = "/etc/init.d/proftpd stop" if failed port 21 protocol ftp then restart
Guardamos los cambios usando la combinación de teclas siguiente:
Ctrl +O
Salimos del editor usando:
Ctrl + X
Una vez guardado este archivo ejecutaremos las siguientes líneas:
ln -s /etc/monit/conf-available/proftpd /etc/monit/conf-enabled monit -t (Permite comprobar la sintaxis del archivo) systemctl restart monit
Podemos comprobar que estos servicios han sido añadidos a la interfaz web de Monit:
Podemos pulsar sobre algún servicio para ver información detallada del mismo:
10. Cómo monitorear a través de la terminal Debian 9
Si el monitoreo de los procesos lo realizamos a través de la consola podremos ejecutar la siguiente línea para desplegar un resumen de los procesos activos:
monit summaryEste será el resultado:
Si deseamos ver el estado de todos los servicios ejecutaremos la siguiente línea:
monit statusEste será el resultado:
Para conocer el estado de un proceso en particular ejecutaremos la sintaxis:
monit status (Proceso)
De esta forma Monit es una alternativa simple y completa para ver el estado de los procesos que deben ser monitorizados en tiempo real proveyendo amplia información de los mismos.