Monitoreo Servidores · 6 min read · Oct 20, 2025
Monitoreo de Servidores con Shinken en Ubuntu 16.04
Shinken es un marco de monitoreo de computadoras y redes de código abierto escrito en python y compatible con Nagios. Shinken se puede usar en todos los sistemas operativos que pueden ejecutar aplicaciones de python como Linux, Unix y Windows. Shinken fue escrito por Jean Gabes como prueba de concepto para una nueva arquitectura de Nagios, pero fue rechazado por el autor de Nagios y se convirtió en una herramienta independiente de monitoreo de redes y sistemas que se mantiene compatible con Nagios.
En este tutorial, te mostraré cómo instalar Shinken desde el código fuente y agregar un host Linux al sistema de monitoreo. Usaré Ubuntu 16.04 Xenial Xerus como el sistema operativo para el servidor Shinken y el host monitoreado.
Paso 1 - Instalar el Servidor Shinken
Shinken es un marco de python, podemos instalarlo con pip o instalarlo desde el código fuente. En este paso, instalaremos Shinken desde el código fuente.
Hay algunas tareas que deben completarse antes de comenzar a instalar Shinken.
Instala algunos nuevos paquetes de python y crea un usuario de Linux con el nombre “shinken”:
sudo apt-get install python-setuptools python-pip python-pycurl
useradd -m -s /bin/bash shinkenDescarga el código fuente de Shinken desde el repositorio de GitHub:
git clone https://github.com/naparuba/shinken.git
cd shinken/Luego instala Shinken con el siguiente comando:
git checkout 2.4.3
python setup.py installA continuación, para obtener mejores resultados, necesitamos instalar ‘python-cherrypy3’ desde el repositorio de ubuntu:
sudo apt-get install python-cherrypy3Ahora Shinken está instalado, a continuación, agregamos Shinken para que se inicie al arrancar y lo iniciamos:
update-rc.d shinken defaults
systemctl start shinkenPaso 2 - Instalar Shinken Webui2
Webui2 es la interfaz web de Shinken disponible en shinken.io. La forma más fácil de instalar Sshinken webui2 es utilizando el comando shinken CLI (que debe ejecutarse como usuario shinken).
Inicia sesión como usuario shinken:
su - shinkenInicializa el archivo de configuración de shinken - El comando creará un nuevo archivo de configuración .shinken.ini:
shinken --initY instala webui2 con este comando CLI de shinken:
shinken install webui2Webui2 está instalado, pero necesitamos instalar MongoDB y otro paquete de python con pip. Ejecuta el siguiente comando como root:
sudo apt-get install mongodb
pip install pymongo>=3.0.3 requests arrow bottle==0.12.8A continuación, ve al directorio de shinken y agrega el nuevo módulo webui2 editando el archivo ‘broker-master.cfg’:
cd /etc/shinken/brokers/
vim broker-master.cfgAgrega una nueva opción dentro del módulo en la línea 40:
modules webui2Guarda el archivo y sal del editor.
Ahora ve al directorio de contactos y edita el archivo ‘admin.cfg’ para la configuración del administrador.
cd /etc/shinken/contacts/
vim admin.cfgCambia los valores que se muestran a continuación:
contact_name admin # Nombre de usuario 'admin'
password yourpass # Contraseña 'mypass'Guarda y sal.
Paso 3 - Instalar Nagios-plugins y Paquetes de Shinken
En este paso, instalaremos Nagios-plugins y algunos módulos de Perl. Luego instalaremos paquetes adicionales de shinken desde shinken.io para realizar el monitoreo.
Instala Nagios-plugins y cpanminus que es necesario para construir e instalar los módulos de Perl:
sudo apt-get install nagios-plugins* cpanminusInstala estos módulos de Perl con el comando cpanm:
cpanm Net::SNMP
cpanm Time::HiRes
cpanm DBIAhora crea un nuevo enlace para el archivo utils.pm en el directorio de shinken y crea un nuevo directorio para Log_File_Health:
chmod u+s /usr/lib/nagios/plugins/check_icmp
ln -s /usr/lib/nagios/plugins/utils.pm /var/lib/shinken/libexec/
mkdir -p /var/log/rhosts/
touch /var/log/rhosts/remote-hosts.logA continuación, instala los paquetes de shinken ssh y linux-snmp para monitorear fuentes SSH y SNMP desde shinken.io:
su - shinken
shinken install ssh
shinken install linux-snmpPaso 4 - Agregar un Nuevo Host Linux/host-one
Agregaremos un nuevo host Linux que será monitoreado utilizando un servidor Ubuntu 16.04 con dirección IP 192.168.1.121 y nombre de host ‘host-one’.
Conéctate al host Linux host-one:
ssh [email protected]Instala los paquetes snmp y snmpd desde el repositorio de Ubuntu:
sudo apt-get install snmp snmpdA continuación, edita el archivo de configuración ‘snmpd.conf’ con vim:
vim /etc/snmp/snmpd.confComenta la línea 15 y descomenta la línea 17:
#agentAddress udp:127.0.0.1:161
agentAddress udp:161,udp6:[::1]:161Comenta las líneas 51 y 53, luego agrega una nueva línea de configuración a continuación:
#rocommunity mypass default -V systemonly
#rocommunity6 mypass default -V systemonly
rocommunity mypassGuarda y sal.
Ahora inicia el servicio snmpd con el comando systemctl:
systemctl start snmpdVe al servidor shinken y define el nuevo host creando un nuevo archivo en el directorio ‘hosts’.
cd /etc/shinken/hosts/
vim host-one.cfgPega la configuración a continuación:
define host{
use generic-host,linux-snmp,ssh
contact_groups admins
host_name host-one
address 192.168.1.121
_SNMPCOMMUNITY mypass # Configuración de SNMP en snmpd.conf
}Guarda y sal.
Edita la configuración SNMP en el servidor Shinken:
vim /etc/shinken/resource.d/snmp.cfgCambia ‘public’ a ‘mypass’ - debe ser la misma contraseña que usaste en el archivo de configuración snmpd en el host cliente host-one.
$SNMPCOMMUNITYREAD$=mypassGuarda y sal.
Ahora reinicia ambos servidores - el servidor Shinken y el host Linux monitoreado:
rebootEl nuevo host Linux se ha agregado correctamente al servidor Shinken.
Paso 5 - Acceder a Shinken Webui2
Visita la webui2 de Shinken en el puerto 7677 (reemplaza la IP en la URL con tu IP):
Inicia sesión con el usuario admin y tu contraseña (la que configuraste en el archivo de configuración admin.cfg).

Panel de control de Shinken en Webui2.

Nuestros 2 servidores están monitoreados con Shinken.

Lista de todos los servicios que están monitoreados con linux-snmp.

Estado de todos los hosts y servicios.

Paso 6 - Problemas Comunes con Shinken
- Problemas con el servidor NTP
Cuando obtienes este error con NTP.
TimeSync - CRITICAL ( NTP CRITICAL: No response from the NTP server)
TimeSync - CRITICAL ( NTP CRITICAL: Offset unknown )Para resolver este problema, instala ntp en todos los hosts Linux.
sudo apt-get install ntp ntpdateEdita la configuración de ntp:
vim /etc/ntp.confComenta todos los pools y reemplázalos con:
#pool 0.ubuntu.pool.ntp.org iburst
#pool 1.ubuntu.pool.ntp.org iburst
#pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst
pool 0.id.pool.ntp.org
pool 1.asia.pool.ntp.org
pool 0.asia.pool.ntp.orgA continuación, agrega una nueva línea dentro de restrict:
# Los usuarios locales pueden interrogar el servidor ntp más de cerca.
restrict 127.0.0.1
restrict 192.168.1.120 #dirección IP del servidor shinken
restrict ::1NOTA: 192.168.1.120 es la dirección IP del servidor Shinken.
Guarda y sal.
Inicia ntp y verifica el panel de control de Shinken:
tnpd- Problema check_netint.pl No Encontrado
Descarga el código fuente del repositorio de github al directorio lib de shinken:
cd /var/lib/shinken/libexec/
wget https://raw.githubusercontent.com/Sysnove/shinken-plugins/master/check_netint.pl
chmod +x check_netint.pl
chown shinken:shinken check_netint.pl- Problema con NetworkUsage
Hay un mensaje de error:
ERROR : Unknown interface eth\d+Verifica tu interfaz de red y edita la plantilla linux-snmp.
En mi servidor Ubuntu, la interfaz de red es ‘enp0s8’, no eth0, así que obtuve este error.
Edita los paquetes de plantilla linux-snmp con vim:
vim /etc/shinken/packs/linux-snmp/templates.cfgAgrega la interfaz de red a la línea 24:
_NET_IFACES eth\d+|em\d+|enp0s8Guarda y sal.
Referencias
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.