Checkmk
to checkmk.com

1. Introducción

ntopng logo.

Checkmk ofrece muchas funciones básicas para monitorizar tu infraestructura de red y proporciona las métricas asociadas, como el ancho de banda, la tasa de paquetes o la tasa de errores. También permite monitorizar el estado y la velocidad de las interfaces de red y los umbrales.

Hasta aquí, todo bien, pero ¿qué pasa con las siguientes preguntas? ¿Quién se comunica con tus host? ¿Qué puertos de tus host se están utilizando? ¿Quién habla más a menudo, es decir, quiénes son los llamados "top talkers"? ¿Qué aplicaciones se utilizan en la red? ¿Mi red funciona bien y dónde están los cuellos de botella, si los hay? ¿Existen amenazas, por ejemplo, de ataques de Denegación de Servicio Distribuida (DDoS)?

Para obtener respuestas a estas y otras preguntas similares, es necesario un análisis profundo de tu red, que Checkmk por sí solo no puede hacer. Aquí se necesita un análisis de los flujos de red, es decir, de las muchas relaciones de comunicación que tienen lugar simultáneamente en la red. Un flujo de red se define por el origen y por el destino (cada uno determinado por la dirección IP y el puerto) y el protocolo utilizado.

En lugar de añadir a Checkmk las funciones para la monitorización en profundidad de la red y reinventar así la rueda, existe una solución más elegante: la integración de ntopng en Checkmk. La integración de ntopng es un complemento disponible para su adquisición en las ediciones comerciales de Checkmk.

ntopng es un software potente y eficiente en cuanto a recursos para la monitorización y el análisis del tráfico de red en tiempo real, así como de datos del pasado, de modo que puede proporcionar las respuestas a las preguntas planteadas anteriormente. ntopng es el núcleo de la solución de monitorización del tráfico de red de código abierto de la empresa ntop. En una solución ntop, los datos suelen recogerse de los dispositivos mediante módulos de software especiales(nProbe) y se envían a ntopng para su análisis.

ntopng está relacionado con Checkmk en más de un sentido: procede y está arraigado en el mundo del código abierto. ntopng está disponible en una versión gratuita "Community", así como en varias versiones comerciales ampliadas "Professional" y "Enterprise". La interfaz de usuario está basada en web y proporciona la información en vistas de tablas y dashboards. Pueden crearse varios usuarios y a cada uno de ellos se le puede asignar una función. Se admiten notificaciones basadas en umbrales. Por último, los datos pueden obtenerse de ntopng a través de la API-REST de Checkmk.

La interacción de los productos implicados se muestra en la siguiente ilustración:

Illustration of the communication between Checkmk and the ntop products ntopng and nProbe.

La integración de ntopng amplía así el alcance funcional de Checkmk en dos puntos importantes: la monitorización del flujo de datos de la red y el análisis en profundidad del tráfico de la red.

En este contexto, integración significa concretamente lo siguiente:

  1. Checkmk y ntopng se instalan y configuran como sistemas independientes en servidores distintos. Se recomienda que Checkmk y ntopng no se ejecuten en el mismo servidor.

  2. Se establece una conexión desde el servidor Checkmk al servidor ntopng. Aquí Checkmk se comunica con ntopng a través de su API-REST. Los parámetros de conexión se utilizan para decidir qué datos se obtienen de ntopng. La asignación se realiza a través de las cuentas de usuario disponibles de ambos sistemas.

  3. La información de ntopng se muestra en la interfaz de usuario de Checkmk. Por un lado, esto se consigue en nuevos dashboards en los que la información de ntopng se prepara para los usuarios de Checkmk. Por otro lado, los datos de ntopng se pueden integrar en las vistas y dashboards existentes de Checkmk.

Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

2. Conexión con ntopng

Para utilizar la integración de ntopng en Checkmk, necesitas una de las ediciones comerciales de Checkmk con el complemento para la integración de ntopng y un ntopng en versión Professional o Enterprise >= 5.6, con una API-REST v2 a través de la cual se comunican Checkmk y ntopng.

Primero recopila la siguiente información sobre el sistema de destino ntopng que quieres conectar a Checkmk. Debes introducir esta información en Checkmk como parámetros de conexión ntopng:

Parámetro Descripción

Nombre del host

El nombre o la dirección IP (Host Address) del servidor ntopng.

Número de puerto

El número del puerto TCP (Port number), a través del cual se puede acceder a ntopng. El puerto se especifica cuando se inicia ntopng. El valor por defecto es 3000.

Protocolo

HTTP o HTTPS. La conexión entre Checkmk y ntopng sólo debe realizarse a través de HTTPS. El nombre y la contraseña de la cuenta de usuario del ntopng se almacenan en texto plano en el site Checkmk, ya que los datos de acceso deben transmitirse sin cifrar a través de la API-REST al servidor ntopng.

Cuenta de usuario para autenticación

Nombre y contraseña de una cuenta de usuario del grupo de usuarios "Administrador" de ntopng (ntopng Admin User). Checkmk se autentifica con el servidor ntopng utilizando estas credenciales a través de la API-REST. Por cierto, la cuenta de usuario por defecto de ntopng se llama admin y está asignada al grupo de usuarios "Administrador".

En Checkmk, empieza a introducir los parámetros de conexión a ntopng en el menú Setup > General > Global settings > Ntopng (chargeable add-on) > Ntopng Connection Parameters (chargeable add-on):

The ntopng connection parameters in the Global settings.

Ya habrás obtenido la mayoría de los valores de los parámetros solicitados y, por lo tanto, puedes tomarlos de la tabla anterior. Sólo tenemos que fijarnos en uno de los parámetros de conexión: ntopng username to aquire data for. Esto determina quién puede ver qué datos de ntopng en Checkmk. Las cuentas de usuario con las que Checkmk se autentifica con ntopng y con las que Checkmk obtiene datos de ntopng se definen de forma diferente. Explicamos las opciones y las diferencias resultantes a la hora de obtener los datos en las dos secciones siguientes.

Tip

No se comprueba la validez de las entradas para la conexión a ntopng al guardar. No recibirás mensajes de error por valores inválidos hasta que se muestre la información de ntopng. Con el primer parámetro de conexión a ntopng Enable this ntopng instance puedes desactivar la conexión a ntopng, por ejemplo, si el servidor ntopng no está disponible temporalmente.

2.1. Asignaciones fijas de usuarios Checkmk y ntopng con el mismo nombre

La solución más sencilla es dar a un usuario de Checkmk acceso a la información que ve en ntopng con el mismo nombre de usuario.

Para ello, selecciona el valor Use the Checkmk username as ntopng user name para el parámetro ntopng username to aquire data for. Checkmk utilizará entonces el nombre de usuario actual de Checkmk y recuperará los datos de ntopng con ese nombre.

Para que la recuperación de datos funcione mediante esta asignación, debe existir al menos una cuenta de usuario con el mismo nombre tanto en Checkmk como en ntopng. Independientemente de cómo lo pienses, probablemente será necesario cambiar los nombres de usuario en Checkmk, ntopng o incluso en ambos sistemas. En el artículo sobre administración de usuarios se explica cómo crear o cambiar un nombre de usuario en Checkmk.

Después de activar los cambios, todos los usuarios de Checkmk verán los cambios en la interfaz de usuario para ntopng, tal y como se describe en el capítulo sobre la visualización de la información de ntopng, por ejemplo, la extensión del menú Monitor. Sin embargo, los datos de ntopng sólo serán visibles para aquellos usuarios de Checkmk que tengan una cuenta de usuario en el homólogo ntopng. Los demás usuarios de Checkmk podrán abrir las páginas específicas de ntopng, pero sólo recibirán páginas en blanco o un mensaje de error indicando que los datos de inicio de sesión no son válidos.

Esta es la opción más sencilla, pero también inflexible.

2.2. Asignación flexible de usuarios Checkmk a usuarios ntopng

Checkmk y ntopng tienen conceptos similares en su administración de usuarios: ambos sistemas pueden tener varios usuarios, y a cada usuario se le asigna un rol. En Checkmk estos roles se denominan, entre otros, "Administrador", "Usuario normal de monitorización" y "Usuario invitado", mientras que ntopng tiene los roles "Administrador" y "Usuario sin privilegios". Estos roles asignados se utilizan -entre otras funciones- para decidir a qué información puede acceder un usuario.

En lugar de la rígida asignación 1:1 descrita anteriormente, tienes la opción de decidir para cada usuario de Checkmk si quieres darle datos de ntopng y -en caso afirmativo- de qué usuario de ntopng debe recibirlos.

Como los usuarios tienen asignados distintos roles en ambos sistemas, puedes controlar con mucha precisión qué contenido ntopng se permite ver en Checkmk, por ejemplo así: no asignas un usuario ntopng a un "usuario invitado" de Checkmk que no esté interesado en el tráfico de red, por lo que las extensiones de interfaz Checkmk específicas de ntopng están ocultas para este usuario. Por ejemplo, asigna un ntopng 'Usuario sin privilegios' a un Checkmk 'Usuario de monitorización normal' y a un aprendiz de red, o asigna un ntopng 'Administrador' a un Checkmk 'Administrador' y a un experto en redes.

El procedimiento para las asignaciones flexibles es el siguiente:

En Ntopng Connection Parameters (chargeable add-on) selecciona para ntopng user name to aquire data for el valor Use the ntopng username as configured in the User settings.

Después de guardar la configuración de la conexión ntopng, aparecerá un nuevo campo en la configuración para cada usuario (Setup > Users > Users) bajo Identity, por ejemplo, como se muestra a continuación para el usuario cmkadmin:

The properties of a Checkmk user with the new field for entering an ntopng user.

En el campo ntopng Username, introduce el nombre de usuario ntopng cuya información se mostrará al usuario Checkmk actual. Si este campo se deja vacío (que es el valor predeterminado), las extensiones específicas ntopng de la interfaz Checkmk se ocultan para el usuario Checkmk. Por último, activa los cambios.

3. Visualizar la información de ntopng

Una vez cumplidos los requisitos descritos en el capítulo Conexión a ntopng, ahora tendrás acceso a los datos de ntopng en Checkmk. Para ello, inicia sesión en Checkmk con una cuenta de usuario asignada a una cuenta de usuario de ntopng.

A continuación se ofrece una Vista general de dónde y cómo puedes acceder a la información ntopng en la interfaz de usuario de Checkmk.

3.1. Estadísticas de red en el menú Monitorización

The Monitor menu with the new 'Network statistics' topic.

El cambio más notable se encuentra en el menú Monitor, que contiene el nuevo tema Network statistics con entradas para varios dashboards con datos de ntopng, que presentaremos en secciones posteriores.

Pero primero ve a la información que puedes obtener sobre los host ntopng en Checkmk.

3.2. Vistas con hosts ntopng

Checkmk y ntopng no sólo gestionan sus usuarios de forma independiente, sino también sus hosts. Sin embargo, si un host en Checkmk también está configurado en ntopng, puedes mostrar información específica de ntopng para este host.

En cada vista de host, puedes utilizar el filtro Ntopng Host para crear una visualización de los hosts presentes tanto en Checkmk como en ntopng, de la siguiente manera: En la vista de host (por ejemplo All hosts), haz clic en Filter en la barra de acciones para abrir la barra de filtros. En la barra de filtros, haz clic primero en Add filter para mostrar los filtros disponibles y luego en para mostrar todos los filtros. Selecciona el filtro Ntopng Host de la lista, establécelo en yes y actívalo con Apply filters.

La vista de tabla sólo mostrará los host que estén tanto en Checkmk como en ntopng:

The action menu of an ntopng host contains an additional entry.

En el ejemplo anterior, hay dos hosts en común. Un host ntopng muestra la entrada Ntop integration of this host en el menú de acción.

3.3. Estadísticas de red de un host

Para un host ntopng, haz clic en el item del menú de acción Ntop integration of this host y obtendrás la página Network statistics and flows específica del host:

The 'Network statistics and flows' page for an ntopng host.

La primera línea muestra un resumen de todos los host configurados en ntopng, con el número de alertas actuales (Alerts y Flow Alerts).

A continuación, los datos de red del host seleccionado se presentan desde diferentes perspectivas en esta página, en las siguientes pestañas:

  • Host: Información básica del host y un resumen de la información más importante de las otras pestañas.

  • Traffic: Información sobre el protocolo de capa 4 (TCP y UDP) para una vista general en forma de gráfico circular y detallada en forma de tabla.

  • Packets: Distribución de banderas en las conexiones TCP. Las banderas indican el estado concreto de la conexión o proporcionan información adicional. Las banderas más utilizadas son SYN (sincronización), ACK (Reconocimiento), FIN (finalización) y RST (reinicio).

  • Ports: Estadísticas de tráfico agrupadas por puertos de cliente y servidor

  • Peers: Vista general de los pares (es decir, los interlocutores) contactados con más frecuencia y de las aplicaciones utilizadas con más frecuencia, en forma de gráficos y de tabla. Los elementos gráficos pueden filtrarse haciendo clic sobre ellos.

  • Apps: El volumen de tráfico dividido por aplicaciones y resumido por categorías. Las aplicaciones de capa 7 se determinan mediante una inspección profunda de paquetes. En la tabla de aplicaciones, los nombres de las aplicaciones están enlazados y llevan a una página ntopng con información detallada.

  • Flows: Tabla de los flujos de datos que tienen el host seleccionado como punto inicial o final. Para más información, consulta la sección Dashboard de flujos.

  • Engaged alerts, Past alerts, Flow alerts: Tablas de alertas activas, alertas pasadas y alertas de flujos. Para más información, consulta la sección Dashboard de alertas.

En cada pestaña, puedes utilizar el enlace View data in ntopng para acceder a la página ntopng asociada, que te llevará a los Detalles del host ntopng.

Consejo: También puedes acceder a la página Network statistics and flows desde las vistas Services of Host y Status of Host seleccionando la pestaña que abre la página. Ambas vistas, cuando se llaman para un host ntopng, proporcionan el menú ntopng en su barra de menú, que contiene entradas para cada pestaña individual.

3.4. Estado de un host

En la página Network statistics and flows, haz clic en Status of host en la barra de acciones para abrir la vista de tabla Status of Host.

En esta vista se muestra una amplia variedad de información específica del host en una tabla, que puede ampliarse con entradas específicas de ntopng. Esto mostrará información con la que ya estás familiarizado de algunas de las pestañas de la página Network statistics and flows - en parte debido a la falta de espacio, sin embargo, sólo se mostrará una selección de esta información.

Para utilizar las entradas específicas de ntopng, debes personalizar esta vista. En el menú, selecciona Display > Clone built-in view. En la página Clone view, las columnas del contenido de la tabla pueden definirse en la caja Columns.

Puedes añadir las siguientes entradas específicas de ntopng a través de Add column:

  • Hosts: Ntop hosts details: Muestra la información más importante en la pestaña Host.

  • Hosts: Ntop protocol breakdown: Muestra la tabla de registro en la pestaña Traffic.

  • Hosts: Ntop ports: Muestra los gráficos circulares de cliente y servidor de la pestaña Ports.

  • Hosts: Ntop top peers: Muestra el gráfico circular de la aplicación en la pestaña Peers.

3.5. dashboard de alertas

El dashboard Alerts te da una visión general de todas las alertas en ntopng.

Selecciona Monitor > Network statistics > Alerts:

The 'Alerts' dashboard with two past host alerts.

Puedes cambiar entre las tablas de alertas con las siguientes pestañas:

  • Engaged Host: Tabla de alertas de host activas. ntopng genera alertas para informar de la superación de umbrales.

  • Past Host: Tabla de alertas antiguas que ya no están activas.

  • Past Flows: Tabla de alertas de flujo, una categoría especial en la que ntopng informa de flujos anormales o sospechosos. Las alertas de flujo siempre están vinculadas a eventos. Se recogen en su propia categoría y no aparecen en las tablas de alertas activas o pasadas.

Cada página muestra un máximo de 20 entradas. Puedes cambiar a las otras páginas utilizando los botones de navegación situados a la derecha, encima de la tabla.

En todas las pestañas, hay dos gráficos de barras encima de la tabla con un desglose por fecha y hora, que puedes utilizar para filtrar la tabla: arrastrando con el ratón, selecciona un intervalo de tiempo en un diagrama. El filtro así definido se aplica inmediatamente a la tabla de alertas. Para desactivar el filtro, haz clic fuera de la marca en el diagrama.

Tip

La estructura de este dashboard es similar a la de las tres pestañas específicas de alerta de la página Network statistics and flows (consulta la sección Estadísticas de red de un host).

3.6. Dashboard de flujos

El dashboard Flows te da una visión general de los flujos en ntopng. Un flujo es una conexión a través del protocolo de capa 4 entre el punto inicial y el punto final, cada uno determinado por una dirección IP y un puerto. Un flujo sólo puede mostrarse una vez que se ha completado la transmisión de datos. Por esta razón, la visualización de los flujos es siempre una mirada al pasado, aunque sólo haya sido hace unos segundos.

Selecciona Monitor > Network statistics > Flows:

The 'Flows' dashboard.

La tabla es esencialmente idéntica a la tabla Flujos de la interfaz ntopng.

Tip

Este dashboard tiene una estructura similar a la pestaña Flows de la página Network statistics and flows (consulta la sección Estadísticas de red de un host).

3.7. Dashboard de Top Talkers

El dashboard Top Talkers te muestra en tiempo real qué hosts de ntopng están generando más tráfico de red.

Selecciona Monitor > Network statistics > Top Talkers:

The 'Top Talkers' dashboard.

En la parte izquierda del dashboard, se enumeran los "Top Talkers" actuales, ordenados por el volumen de tráfico de datos que intercambian. La sección superior muestra los host de la red local, y la sección inferior, los destinos de las redes remotas. Se puede hacer clic en cada host, lo que abre la página ntopng correspondiente con los detalles del host.

En los diagramas también obtienes una visión general del tráfico de datos en las aplicaciones (izquierda) y en las interfaces monitorizadas (derecha), durante la última hora (arriba) y durante las 24 horas anteriores (abajo). Las entradas de la leyenda mostrada en cada diagrama son clicables y pueden utilizarse para filtrar los datos.

Tip

La estructura de este dashboard es similar a la del Dashboard de Tráfico de la interfaz ntopng.

3.8. Dashlets

Los dashboards Alerts, Flows y Top Talkers presentados en las últimas secciones constan de un solo dashlet cada uno.

Al editar un dashboard, puedes utilizar estos dashlets ntopng para personalizar dashboards existentes o para crear otros nuevos. Puedes empezar con la configuración del dashboard en el en el menú Personalizar con Visualization > Dashboards. Al editar un dashboard, encontrarás los dashlets ntopng, así como los demás dashlets, en el menú Add en la sección Ntop.

En esta página