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 shinken

Descarga 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 install

A continuación, para obtener mejores resultados, necesitamos instalar ‘python-cherrypy3’ desde el repositorio de ubuntu:

sudo apt-get install python-cherrypy3

Ahora Shinken está instalado, a continuación, agregamos Shinken para que se inicie al arrancar y lo iniciamos:

update-rc.d shinken defaults  
systemctl start shinken

Paso 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 - shinken

Inicializa el archivo de configuración de shinken - El comando creará un nuevo archivo de configuración .shinken.ini:

shinken --init

Y instala webui2 con este comando CLI de shinken:

shinken install webui2

Webui2 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.8

A 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.cfg

Agrega una nueva opción dentro del módulo en la línea 40:

modules     webui2

Guarda 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.cfg

Cambia 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* cpanminus

Instala estos módulos de Perl con el comando cpanm:

cpanm Net::SNMP  
cpanm Time::HiRes  
cpanm DBI

Ahora 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.log

A 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-snmp

Paso 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 snmpd

A continuación, edita el archivo de configuración ‘snmpd.conf’ con vim:

vim /etc/snmp/snmpd.conf

Comenta la línea 15 y descomenta la línea 17:

#agentAddress  udp:127.0.0.1:161  
agentAddress udp:161,udp6:[::1]:161

Comenta 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 mypass

Guarda y sal.

Ahora inicia el servicio snmpd con el comando systemctl:

systemctl start snmpd

Ve al servidor shinken y define el nuevo host creando un nuevo archivo en el directorio ‘hosts’.

cd /etc/shinken/hosts/  
vim host-one.cfg

Pega 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.cfg

Cambia ‘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$=mypass

Guarda y sal.

Ahora reinicia ambos servidores - el servidor Shinken y el host Linux monitoreado:

reboot

El 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):

http://192.168.1.120:7767

Inicia sesión con el usuario admin y tu contraseña (la que configuraste en el archivo de configuración admin.cfg).

La página de inicio de sesión de Shinken

Panel de control de Shinken en Webui2.

El panel de monitoreo de Shinken

Nuestros 2 servidores están monitoreados con Shinken.

Ambos servidores están monitoreados con Shinken

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

Servicios Monitoreados

Estado de todos los hosts y servicios.

El estado de todos los hosts

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 ntpdate

Edita la configuración de ntp:

vim /etc/ntp.conf

Comenta 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.org

A 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 ::1

NOTA: 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.cfg

Agrega la interfaz de red a la línea 24:

_NET_IFACES         eth\d+|em\d+|enp0s8

Guarda y sal.

Referencias

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.