Nems, primeros pasos 00

Llevo tiempo siguiendo este proyecto y la verdad dada mi experiencia con Nagios creo que es mi opción para una monitorización de mi homelab, no para cuadros de mando que eso es otra historia. Dado que el precio de las Raspberrys esta prohibitivo me deje de plantear el tema. Pero ahora gracias a un buen amigo que encontró una buena oferta en un kit voy afrontar el proyecto. En este artículo y posteriores que quiero ir escribiendo contare mi experiencia aportando lo que pueda y me apoyaré en la documentación oficial.
¿ Que es Nems ?
Nems es una distribución de Linux construida como un dispositivo. Simplifica la implementación inicial y la configuración de un servidor de monitoreo empresarial con tecnología de Nagios Core y agrega características complejas, integrando varios proyectos de código abierto para crear un dispositivo completo y escalable. NEMS no es solo una simple “distro de Nagios Core preinstalada”, sino que es una distribución completa de Linux construida en torno a proporcionar un dispositivo potente y con muchas características basado en Nagios.
Instalación
Para realizar la instalación tenemos varias opciones. Estas opciones están basadas en hardware especifico o bien un sistema virtualizado. En mi caso utilizaré una Raspberry Pi 5 con 8 GB de Ram con una tarjeta de 128 Gb. En principio sin nada mas, quizá en un futuro añada algún hardware adicional ( hat ups, sensor de temperatura, etc.).
Lo primero e todo tenemos que descargar la imagen y plancharla en la tarjeta sd, esto lo podemos hacer de dos modos:
Interface gráfico
- Descarga la última versión de NEMS Linux desde https://nemslinux.com/
- Instale el Raspberry Pi Imager desde https://www.raspberrypi.com/software/
- Haga clic en “Elegir OS”
- Haga clic en “Elegir personalizado” en la parte inferior de la lista
- Navega a la copia descargada de NEMS Linux
- Haz clic en “Elegir almacenamiento”
- Inserte su tarjeta MicroSD o unidad flash USB
- Seleccione cuidadosamente su tarjeta MicroSD o unidad flash USB
- Haz clic en “Escribir”
Desde el terminal
⚠️ Advertencia: sustituye /dev/sdX por el dispositivo real de tu microSD (ej.
/dev/sdb
o/dev/mmcblk0
). NO utilices un número de partición (p. ej. no/dev/sdb1
). Si te equivocas, puedes borrar discos del sistema.
Abrimos un terminal con privilegios de administrador:
Preparar entorno (instala herramientas necesarias)
apt update
apt install -y wget unzip pv
mkdir -p ~/Downloads/nems
cd ~/Downloads/nems
⚠️ Advertencia: a dia de hoy la ultima version es 1.7-RPi-Build2, si cambia la version el enlace de descarga cambiara.
wget --show-progress -O NEMS_v1.7-RPi-Build2.zip "https://dittodistro.com/free/cTXkg70P/NEMS_v1.7-RPi-Build2.zip"
Verificar la suma MD5 del ZIP (comprobación de integridad)
El MD5 oficial para NEMS_v1.7-RPi-Build2.zip
es: 93c74a4b65e83f06c159352f6f9c719e
.
Comprobamos que el MD5 es correcto:
echo "93c74a4b65e83f06c159352f6f9c719e NEMS_v1.7-RPi-Build2.zip" | md5sum -c -
Si la salida del comando es NEMS_v1.7-RPi-Build2.zip: OK
→ la descarga es correcta. Si la salida del comando es FAILED
, borra el ZIP y vuelve a descargarlo.
Listar o extraer el contenido del ZIP
Primero mira qué contiene:
unzip -l NEMS_v1.7-RPi-Build2.zip
Descomprimir:
unzip NEMS_v1.7-RPi-Build2.zip
Después de descomprimir tendremos un fichero .img
(p. ej. NEMS_v1.7-RPi-Build2.img
) — si aparece .img.xz
o similar.
Si el archivo extraído es .img.xz
, lo tendremos que descomprimir:
# si es .img.xz
unxz nombre_extraido.img.xz
Identificar el dispositivo de la microSD (MUY importante)
Antes de insertar la tarjeta:
lsblk -o NAME,SIZE,MODEL,FSTYPE,MOUNTPOINT
Inserta la microSD en el lector y vuelve a ejecutar:
lsblk -o NAME,SIZE,MODEL,FSTYPE,MOUNTPOINT
La nueva entrada mostrada será tu tarjeta (ej.: /dev/sdb
o /dev/mmcblk0
). Otra manera de ver esta información es utilizado dmesg
:
dmesg | tail -n 20 # inserta la tarjeta, mira el mensaje del kernel para el nombre (/dev/sdX o /dev/mmcblk0)
Desmontar particiones montadas (si las hubiese). Si el sistema montó automáticamente alguna partición, desmonta todo antes de escribir:
# desmonta todas las particiones del dispositivo (ejemplo /dev/sdX)
umount /dev/sdX* 2>/dev/null || true
# si el dispositivo es mmcblk
umount /dev/mmcblk0p*
Planchar la imagen en la microSD
Sustituye NEMS_v1.7-RPi-Build2.img
por el nombre del .img
resultante y /dev/sdX
por tu dispositivo sin número de partición.
pv NEMS_v1.7-RPi-Build2.img | sudo dd of=/dev/sdX bs=4M conv=fsync
Esto tardara dependiendo de la velocidad de la tarjeta. Sincronizar y expulsar
sync
# intentar expulsar (no siempre funciona para mmcblk):
eject /dev/sdX 2>/dev/null || true
# en ausencia de eject, puedes simplemente retirar la tarjeta tras sync y cerrar el lector
Si todo OK, inserta la microSD en tu Raspberry Pi y enciéndala; NEMS normalmente se inicializa en el primer arranque.
Primer arranque
- Inserta la tarjeta MicroSD en tu Raspberry Pi.
- Conecta el puerto ethernet Raspberry Pi a la red.
- Enciende la Raspberry Pi.
- Esperar aproximadamente 5 minutos para que se realicen las operaciones de primer arranque.
Una vez termine el primer arranque se reiniciara solo. Tendremos que averiguar la ip asignada mediante nuestro DHCP. Si no sabemos como hacerlo podemos conectar un monitor por la salida HDMI y obtendremos una imagen similar a esta:
Una vez tengamos la ip asignada, nos conectaremos mediante ssh con las siguientes credenciales:
Username: nemsadmin
Password: nemsadmin
Ejecutaremos el siguiente comando:
sudo nems-init
A continuación comenzara un asiente que realizara una serie de preguntas referentes a la configuración del sistema:
- Zona horaria.
- Distribución del teclado.
- Nombre de usuario para utilizar como administrador de la plataforma.
- Password del usuario, la preguntara otra vez para su verificación.
- Correo electrónico del usuario para enviar los avisos.
A continuación realizara una serie de tareas automáticamente ( generación llaves ssh, certificados SSL, etc).
Una vez realizado estos pasos, saldremos de la consola y abriremos un navegador con la url a la ip que nos conectamos via ssh mediante https:
https://IP_NEMS
Esto nos mostrara esta pantalla:
Nos desplazaremos al menu SYSTEM y elegiremos la opción Cockpit. Esta es la herramienta que deberemos utilizar para cambiar parámetros del sistema. Es muy fácil e intuitiva, no requiere mayor explicación. Se aconseja configurar la red con ip fija y adecuar los parámetros a nuestro entorno junto con el hostname.
✅ ¡Tu Raspberry Pi ya esta lista para empezar a monitorizar tu red. Ahora es el momento de hacer una copia de seguridad por lo que pueda pasar.