Portátiles, teléfonos inteligentes, tabletas, incluso bombillas... un sinfín de dispositivos tienen ahora la capacidad de conectarse a su red local y a Internet en general. Vigilar los dispositivos con capacidad de red es importante, sobre todo si le preocupa la seguridad de la red o está intentando solucionar problemas de ancho de banda.

Hay varias formas de hacerlo, pero si quieres vigilar los dispositivos y los datos que viajan por tu red las 24 horas del día, los 7 días de la semana, puedes configurar un monitor de red con un ordenador monoplaca Raspberry Pi.

Ejecutándose en segundo plano, su Raspberry Pi registrará el tráfico y el rendimiento de la red, permitiéndole solucionar problemas o supervisar determinados problemas. Si desea configurar un monitor de red Raspberry Pi, esto es lo que tendrá que hacer.

    1 - Creación de un monitor de red Raspberry Pi con NEMS

    Para este proyecto, utilizaremos Nagios que es una herramienta de supervisión de código abierto estándar en el sector para PC y servidores Windows y Linux. En concreto, utilizaremos NEMS (Servidor de supervisión empresarial Nagios) una versión de Nagios que puede utilizar en la Raspberry Pi como sustituto de Raspberry Pi OS.

    Nagios (en NEMS) tiene una serie de características que lo convierten en la opción ideal para la monitorización de redes, como explicaremos más adelante. Para ejecutar NEMS, necesitarás una Raspberry Pi 3 o 4. Las Raspberry Pi más antiguas pueden funcionar con algunas características deshabilitadas, pero el equipo de desarrollo de NEMS recomienda los modelos Pi más recientes para obtener el mejor rendimiento.

    Para instalar NEMS en una Raspberry Pi, también necesitarás una tarjeta microSD con un tamaño mínimo de 16 GB, siendo preferible 32 GB.

    No es necesario disponer de teclado, ratón ni monitor, ya que podrá acceder a NEMS a través de SSH o mediante una interfaz de panel de control a la que puede acceder desde su navegador web.

    Cómo conectarse a una Raspberry Pi de forma remota a través de SSH

    El método preferido (y más común) de conectarse a su Pi para ejecutar comandos.

    2 - Cómo instalar NEMS en una Raspberry Pi

    Antes de poder utilizar NEMS, tendrás que flashear una tarjeta microSD (de 16 GB o más) con la última imagen de NEMS, que puedes descargar del sitio web de NEMS.

    A continuación, puede flashear la imagen en su Raspberry Pi utilizando Raspberry Pi Imager, una herramienta creada por la Fundación oficial Raspberry Pi para instalar nuevos sistemas operativos. Raspberry Pi Imager funciona en Windows, macOS y Linux, y se puede descargar desde el sitio web de la Fundación Raspberry Pi.

    Cómo utilizar Raspberry Pi Imager

    Nuevo software oficial de imágenes Raspberry Pi.

    1. Para empezar, abra la herramienta Raspberry Pi Imager y, a continuación, haga clic en el botón Elegir sistema operativo botón.
    1. En el Sistema operativo pulse la tecla Uso personalizado Tendrá que buscar y seleccionar su archivo de imagen NEMS (en el directorio IMG formato de archivo).
    2. Con el archivo de imagen NEMS seleccionado, haga clic en Elija Tarjeta SD para seleccionar tu tarjeta microSD.
    3. Una vez que esté listo para escribir la imagen en la tarjeta SD, pulse la tecla Escriba a Esto llevará un poco de tiempo.

    Si la imagen se escribe en la tarjeta microSD correctamente, retírela de su PC y devuélvala a su Raspberry Pi. Ahora estará listo para comenzar a configurar y utilizar NEMS.

    3 - Iniciar sesión en NEMS en una Raspberry Pi

    Durante la configuración, lo mejor es conectar la Raspberry Pi que ejecuta NEMS a su red local mediante una conexión Ethernet por cable. Si eso no es posible, tendrá que configurar Wi-Fi en su Raspberry Pi mediante la adición de un wpa_supplicant.conf al archivo arranque partición en su tarjeta microSD, pero puede que esto no funcione eficazmente.

    También necesitará conocer la dirección IP local de su Raspberry Pi cuando la arranque por primera vez. Puede encontrarla en la lista DHCP de su router local, o utilizando aplicaciones como Fing o nmap para escanear su red local.

    Cómo encontrar la dirección IP de su Raspberry Pi

    Para configurar NEMS, enciende tu Raspberry Pi con tu tarjeta microSD insertada. Una vez que tu Pi esté configurada, accede a NEMS desde tu navegador web escribiendo //Dirección IP sustituyendo dirección ip con la dirección IP de tu Raspberry Pi.

    También puede visitar el portal web de NEMS en //nems.local Esto puede o no funcionar, dependiendo de cómo esté configurada su red.

    También puede seguir estas instrucciones realizando una conexión SSH a su Pi, utilizando el nombre de usuario y la contraseña por defecto ( nemsadmin para ambos).

    Si decide utilizar la interfaz web, verá el icono No inicializado Pulse el botón abrir una sesión de terminal basada en navegador para abrir el terminal web.

    Los navegadores web como Google Chrome a veces bloquean esta página debido a una ligera discordancia con el certificado de seguridad emitido para NEMS, y tendrá que evitarlo. Si utiliza Chrome y aparece este error, pulse el botón Avanzado y, a continuación, escriba thisisunsafe en el teclado.

    Puede regenerar sus certificados SSL en una etapa posterior para superar este problema una vez que su Raspberry Pi se haya configurado correctamente.

    Una vez cargado el portal, inicie sesión con el nombre de usuario y la contraseña predeterminados ( nemsadmin ) para acceder al Portal de administración de NEMS (denominado Cabina ).

    4 - Configuración de NEMS en una Raspberry Pi

    Una vez iniciada la sesión, escriba sudo nems-init en el terminal web, accesible desde Terminal Esto iniciará la configuración inicial.

    Primero tendrá que seleccionar su zona geográfica en el menú de configuración utilizando las teclas de flecha del teclado. Una vez que haya seleccionado una opción, pulse la tecla de tabulación del teclado para seleccionar OK y pulsa Intro para continuar.

    Selecciona tu ciudad más cercana de la siguiente lista y pulsa intro (o tabulador e intro) para confirmar. A continuación, tendrás que seguir un proceso similar para determinar tu configuración regional, que se utiliza para establecer determinados ajustes de teclado e idioma.

    Busque su idioma (o idiomas) preferido en la lista (p. ej. es_US.UTF-8 Una vez seleccionados los idiomas, pulsa tabulador e intro en el teclado para continuar. A continuación, tendrás que confirmar la configuración regional predeterminada en el siguiente menú: utiliza las teclas de flecha para seleccionar la configuración regional que prefieras y, a continuación, pulsa intro (o tabulador e intro) para confirmar.

    En este punto se aplicará tu configuración regional, que puede tardar un poco en completarse. Una vez finalizada la configuración, pasarás a la siguiente fase del proceso de configuración.

    A continuación, tendrás que elegir un nuevo nombre de usuario y una nueva contraseña para utilizar con NEMS. Escribe un nombre de usuario en el terminal y pulsa Intro para confirmar. Por motivos de seguridad, es mejor evitar nombres de usuario comunes como admin o root.

    Repita el proceso proporcionando una contraseña segura para su nueva cuenta de usuario, que tendrá que escribir dos veces para confirmar. Si la contraseña es aceptada, proporcione una dirección de correo electrónico en la siguiente etapa, que NEMS intentará utilizar para enviarle notificaciones urgentes mientras no esté supervisando activamente el portal de Nagios, aunque esto puede requerir una configuración adicional para funcionar.

    El script de inicialización de NEMS configurará su nueva cuenta en esta fase, aplicando los privilegios de usuario correctos y generando certificados SSH seguros para las conexiones remotas.

    Tendrá que cerrar la sesión una vez que NEMS confirme que el proceso ha finalizado, ya que el nemsadmin cuenta de usuario que estaba utilizando habrá sido desactivada.

    Para ello, pulse el menú de la parte superior derecha y haga clic en Cerrar sesión Esto le devolverá a la página de autenticación del portal, donde puede iniciar sesión con su nuevo nombre de usuario y contraseña para realizar más cambios en la configuración de NEMS y ver los registros de rendimiento de su Raspberry Pi.

    Si tiene algún problema, reinicie su Raspberry Pi para cargar completamente los cambios que haya realizado en la configuración de NEMS.

    5 - Cuadros de mando NEMS disponibles para la supervisión de redes y sistemas

    Podrá ver los plugins de red y los paneles de control de Nagios instalados desde el portal web de NEMS, accesible en //nems.local o //Dirección IP (sustituyendo dirección ip con la dirección IP de tu Pi).

    Otros plugins que desee instalar pueden venir con sus propias instrucciones y paquetes de requisitos previos, así que asegúrese de consultar primero las páginas de manual y la documentación de estos paquetes.

    Por defecto, NEMS incluye algunos cuadros de mando y herramientas web útiles para su uso, entre los que se incluyen:

    • NEMS Adagios un panel web configurable para sus servicios Nagios (accesible en //nems.local/adagios/status )
    • Núcleo de Nagios el original y configurable panel web de Nagios (accesible en //nems.local/nagios/ )
    • NEMS Móvil una interfaz de usuario móvil básica para ver los datos de Nagios desde dispositivos móviles (accesible en //nems.local/móvil )
    • Panel de TV NEMS un cuadro de mandos de los datos de Nagios para su visualización en un monitor o televisor de gran tamaño (accesible en //nems.local/tv/ )
    • Panorama táctico de NEMS un panel de emergencia que mostrará problemas urgentes con cualquiera de sus dispositivos o servicios supervisados por Nagios (accesible en //nems.local/nagiostv/ )
    • Monitorix un panel de control ligero para la supervisión de redes y sistemas (accesible en //nems.local/monitorix/ )
    • Cabina , el portal de administración web de NEMS con terminal web y otras herramientas y estadísticas disponibles (accesible en //nems.local:9090/ )
    • RPi-Monitor un panel de control para supervisar los recursos del sistema Raspberry Pi (accesible en //nems.local:8888/)
    • Monit un panel para controlar si servicios como Nagios, Samba, Monitorix y otros funcionan o no (accesible en //nems.local:2812/ )

    Puede acceder a estos servicios desde Informes y Sistema en el portal web NEMS, al que puede acceder en //nems.local/ o //Dirección IP (sustituyendo dirección ip con la dirección IP de tu Raspberry Pi),

    6 - Uso de SNMP para la monitorización general de la red con Cacti

    El Protocolo Simple de Gestión de Red (SNMP) se utiliza para compartir información entre dispositivos con capacidad de red en una red local. Puede utilizar este protocolo en una Raspberry Pi para obtener una visión general de su red para la supervisión básica de la red.

    Para ello, deberá utilizar RRDTool y Cactus. RRDTool se utiliza para registrar datos en tiempo real mediante SNMP, mientras que Cacti los presenta en un cuadro de mandos que puedes utilizar junto con otros cuadros de mandos de NEMS. Esto sólo funcionará con routers que admitan SNMP, así que asegúrate de comprobarlo primero.

    Tendrás que abrir el terminal web en //nems.local:9090/sistema/terminal o //dirección-ip:9090/sistema/terminal (sustituyendo dirección ip con la dirección IP de Raspberry Pi) para iniciar el proceso de descarga, configuración e instalación.

    También puedes hacerlo a través de una conexión SSH si lo prefieres.

    7 - Descarga y configuración de Cacti

    Para instalar los paquetes necesarios, escriba lo siguiente en la ventana de terminal abierta, tecleando Y para confirmar:

     sudo apt install -y snmp php-snmp rrdtool librrds-perl 

    Tendrás que reiniciar los servicios de tu servidor web (Apache) y de tu base de datos (MariaDB) para asegurarte de que RRDTool se carga, así como añadir la información de la zona horaria a tu base de datos. Escribe lo siguiente en el terminal para hacerlo, utilizando la contraseña nagiosadmin :

     mysql_tzinfo_to_sql /usr/share/zoneinfo 

    Necesitarás crear una nueva base de datos para que la use Cacti. Primero, inicia sesión en la terminal MariaDB usando el nombre de usuario raíz y contraseña nagiosadmin :

     sudo mysql -u root -p 

    Una vez que hayas iniciado sesión, escribe lo siguiente en la ventana del terminal para crear tu nueva base de datos:

     create database cacti; GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactipass'; flush privileges; exit 

    Es aconsejable sustituir el pase por defecto que aparece aquí ( cactipass ) con una alternativa más segura.

    Una vez creado el nuevo usuario de la base de datos ( cactiuser ), tendrá que darle acceso a la tabla de zonas horarias de MySQL. Para ello, escriba lo siguiente en el terminal:

     sudo mysql -u root -p GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost; flush privileges; exit 

    Con la base de datos para Cacti lista, por fin puedes instalar el dashboard de Cacti. Para ello, escribe lo siguiente en el terminal para actualizar tu base de datos, descarga y extrae Cacti, y carga la configuración en tu nueva base de datos de Cacti:

     sudo mysql_upgrade -u root -p sudo service mysqld restart cd /tmp wget //www.cacti.net/downloads/cacti-latest.tar.gz tar -zxvf cacti-latest.tar.gz sudo mv cacti-1* /opt/cacti sudo mysql -u root -p cacti </opt/cacti/cacti.sql 

    Tendrás que actualizar la configuración de Cacti para utilizar el nombre de usuario y la contraseña correctos escribiendo sudo nano /opt/cacti/include/config.php para editar el archivo, añadiendo su nuevo nombre de usuario y contraseña al campo $nombre_usuario_base_de_datos y $contraseña_base_de_datos secciones.

    Pulse Ctrl+O y Ctrl+X para guardar y salir. Cacti necesitará que se le diga que se actualice de forma regular, lo que puede hacer utilizando crontab Los siguientes pasos configurarán Cacti para que se actualice cada 5 minutos, pero puede cambiarlo si lo prefiere:

     sudo nano /etc/cron.d/cacti */5 * * * www-data php /opt/cacti/poller.php> /dev/null 2>&1 

    Pulse Ctrl+O y Ctrl+X para guardar y salir del archivo. A continuación, tendrá que actualizar su Apache configuración del servidor web, así que abra el archivo de configuración con sudo nano /etc/apache2/sites-available/cacti.conf en el terminal y añadiendo lo siguiente:

     Alias /cacti /opt/cacti Options +FollowSymLinks AllowOverride None = 2.3> Require all granted ="" addtype="" all="" allow="" allow,deny="" application="" code="" directoryindex="" for="" from="" include_path="" index.php="" is="" locales="" magic_quotes_gpc="" mbstring.func_overload="" necessary="" off="" on="" order="" php_flag="" php_value="" register_argc_argv="" register_globals="" setting="" short_open_tag="" some="" this="" track_vars="" x-httpd-php="">

    Una vez añadido, pulse Ctrl+X y Ctrl+O para guardar y salir. Por último, puede habilitar su configuración para Cacti, reiniciar Apache y crear un archivo de registro para Cacti (útil para la solución de problemas) escribiendo lo siguiente:

     sudo a2ensite cacti sudo systemctl restart apache2 sudo touch /opt/cacti/log/cacti.log sudo chown -R www-data:www-data /opt/cacti/ 

    Si estos pasos se completan con éxito, ya está listo para comenzar a instalar Cacti.

    8 - Instalación de cactus

    Ahora debería poder acceder a Cacti abriendo su navegador web y accediendo al panel de instalación en //nems.local/cacti o //dirección ip/cacti (sustituyendo dirección ip con la dirección IP de tu Raspberry Pi).

    Inicia sesión con el nombre de usuario admin y contraseña admin para iniciar la instalación.

    Cacti le pedirá que cambie la contraseña predeterminada. Escriba la contraseña existente y una nueva contraseña, a continuación, pulse Guardar para confirmar.

    A continuación se le pedirá que acepte el acuerdo de licencia. Pulse la tecla Aceptar el acuerdo de licencia GPL y, a continuación, seleccione un tema y un idioma en los menús desplegables disponibles.

    Cuando esté listo, haga clic en Comience para proceder.

    Cacti comprobará que los módulos PHP y MYSQL necesarios, así como las bases de datos, están listos para su uso. Si hay advertencias o errores, se mostrarán aquí, y es posible que tenga que corregirlos antes de continuar.

    Si no hay errores (o sólo advertencias menores), haga clic en Siguiente para pasar a la siguiente etapa. Querrá dejar el Tipo de instalación como Nuevo servidor principal y haga clic en Siguiente .

    Cacti realizará otra comprobación para confirmar que tiene permisos para escribir en su tarjeta microSD. Suponiendo que no haya problemas, haga clic en Siguiente para proceder.

    También se le pedirá que confirme que ubicaciones binarias críticas Todas las opciones deberían ser correctas, con una marca verde de confirmación junto a cada una de ellas. Siguiente para pasar a la siguiente fase.

    Cacti utiliza la protección de la lista blanca para la seguridad, que se puede activar mediante las instrucciones que se muestran en la siguiente etapa. Esto no es estrictamente necesario, sin embargo, así que haga clic en el botón He leído esta declaración y, a continuación, haga clic en Siguiente.

    La configuración por defecto en la siguiente etapa debe estar bien para dejar, pero se puede cambiar la frecuencia con la Cacti sondea su red para los datos aquí. Asegúrese de que el rango de direcciones IP que aparece en Alcance de la red coincide con el rango IP de su red local antes de pulsar Siguiente .

    Cacti utiliza plantillas predeterminadas para agrupar los datos de varios tipos diferentes de dispositivos. Se recomienda dejar todas las plantillas en la posición Configuración de plantillas activada, haga clic en Siguiente .

    Cacti también comprobará si su base de datos es compatible y segura para escribir en ella. Compruebe si hay advertencias en esta página (y corrija las que aparezcan en consecuencia) y, a continuación, haga clic en Siguiente .

    Por último, haga clic en el botón Confirme la instalación y, a continuación, haga clic en Instale para iniciar la instalación.

    La instalación tardará un poco en completarse. Una vez terminada, puedes acceder a los datos de tu red pulsando el botón Comenzar en la parte inferior de la página.

    Mediante SNMP, puede probar su red para detectar automáticamente nuevos dispositivos. Puede encontrarlos en la sección Automatización> Dispositivos descubiertos con más configuraciones disponibles para sus pruebas de red en Automatización> Redes.

    Desde aquí, puede añadirlos como dispositivos guardados, que aparecerán en la sección Gestión> Dispositivos menú.

    Cacti es extremadamente personalizable, lo que le permite crear sus propios gráficos, informes y registros de supervisión. Es posible que desee ampliarlo y configurarlo aún más, en función de su propia red y requisitos.

    Puede encontrar más información sobre cómo hacerlo en las extensas páginas de documentación de Cacti.

    9 - Instalación de plugins adicionales de monitorización de red para Nagios (opcional)

    Nagios es una plataforma que se puede configurar y adaptar ampliamente para satisfacer sus propias necesidades. Es posible que desee instalar plugins adicionales para una mayor monitorización de la red desde sitios como Nagios Exchange o el proyecto Monitoring Plugins.

    El proyecto Monitoring Plugins ofrece un conjunto de unos 50 plugins de monitorización de red que puedes utilizar para registrar datos e importarlos a otros cuadros de mando.

    Si desea instalar los plugins desde el proyecto Monitoring Plugins, acceda al portal de administración de NEMS ( Cabina ) abriendo //nems.local:9090/sistema/terminal o //dirección-ip:9090/sistema/terminal (sustituyendo dirección ip con la dirección IP de tu Raspberry Pi) e iniciando sesión con el nombre de usuario y la contraseña que creaste anteriormente. También puedes hacerlo mediante una conexión SSH a tu Pi.

    En la ventana del terminal, escriba lo siguiente para descargar, compilar e instalar los plugins:

     cd /tmp wget //www.monitoring-plugins.org/download/monitoring-plugins-2.2.tar.gz gzip -dc monitoring-plugins-2.2.tar.gz 

    Puede sustituir el tar.gz URL y otras referencias al archivo con la última versión, disponible para su descarga en la página de descargas del proyecto Monitoring Plugins. Si el archivo Estable no se compila ni se instala, repita los pasos con la opción Desarrollo en su lugar.

    Una vez completado, escriba sudo reboot para reiniciar tu Raspberry Pi y recargar tu configuración de Nagios para soportar los nuevos plugins.

    Puede encontrar más información sobre cada plugin individual, incluyendo cómo ejecutarlos e integrarlos en sus paneles de registro y gráficos de Nagios, en las páginas de documentación del proyecto Monitoring Plugins.

    10 - Actualización de certificados SSL para el portal web de NEMS (opcional)

    Si tiene problemas con los errores de certificados SSL en su navegador web cuando se conecta al portal NEMS, tendrá que regenerar sus certificados para solucionar el problema.

    Para ello, abra una conexión SSH segura a su Raspberry Pi o acceda al terminal web de NEMS en //nems.local:9090/sistema/terminal o //dirección-ip:9090/sistema/terminal sustituyendo dirección ip con la dirección IP de tu Raspberry Pi.

    En el terminal remoto SSH o web, escriba sudo nems-cert El proceso se completará automáticamente y debería evitar que se produzcan errores.

    Si los errores reaparecen en algún momento, repita estos pasos para solucionar el problema.

    11 - Pasos siguientes tras la configuración básica de NEMS

    Una vez que haya completado la configuración básica de NEMS, es probable que desee instalar el agente de supervisión Nagios para poder supervisar más de cerca determinados dispositivos de red. A continuación, puede añadirlos y configurarlos en la carpeta Cuadro de mandos de Adagios.

    Si sólo busca una supervisión más básica y automática de la red, entonces Cactus Si Cacti está configurado correctamente, seguirá sondeando su red en busca de nuevos dispositivos en entrevistas periódicas, que podrá añadir a los gráficos y registros específicos de Cacti para una supervisión periódica.

    Si tienes recursos de sobra, también podrías pensar en usar Nagios junto con otros proyectos en tu Raspberry Pi. En su núcleo, NEMS es simplemente una versión ligera de Debian Linux, por lo que deberías poder instalar otros paquetes para crear un servidor 24/7 para tu red sin demasiado impacto en el rendimiento.

    Por ejemplo, NEMS tiene Samba instalado por defecto, por lo que podría pensar en crear un recurso compartido de archivos muy sencillo para sus dispositivos. Sin embargo, si está creando una unidad NAS Raspberry Pi, probablemente querrá utilizar una Raspberry Pi independiente para asegurarse de que dispone de los recursos de sistema adecuados.