Temporal pandoranta

From Pandora FMS Wiki
Revision as of 04:17, 1 March 2019 by Fermin (talk | contribs) (Configuración de Pandora NTA)
Jump to: navigation, search

1 Pandora Network Traffic Analyzer

Pandora Network Traffic Analyzer (Pandora NTA) es una herramienta de análisis de tráfico de red pensada para entornos donde no se quiere o no se puede utilizar Netflow para hacer un análisis de la red.

Como base se utiliza un fork del proyecto NTOP, además de código propio del proyecto Pandora, que se encarga de recoger los datos y enviárselos en forma de XML al servidor de Pandora FMS.

Esta es una funcionalidad 100% opensource.

Pandora NTA utiliza uno o varios sensores de red para inspeccionar tráfico y generar estadísticas de consumo por IP de origen e IP de destino. No genera información específica de tráfico por puerto o aplicación, para esa función más avanzada debería usar NetFlow.

Pandora NTA es una forma sencilla de monitorizar a bajo nivel su red, sin invertir en hardware especializado o herramientas de terceros, e incorporar esa información en su plataforma de monitorización existente. Pandora NTA le ofrecerá:

  • Consumo detallado por tráfico, de entraa y salida de cada IP local de su red local.
  • Detección de problemas de red (mediante eventos).
  • Informes específicos del consumo de su red, por IP de origen.
  • Una relación de las IP's de destino con más tráfico por IP de origen en su red (pendiente de explotar con informes)

La primera versión de Pandora NTA solo ofrece un informe básico de consumo de red local por origen, pero futuras versiones ofrecerán mapas dinámicos y más opciones con los datos acumulados.

Con los datos de Pandora NTA podrá generar alertas, informes de tipo TopN y emplear cualquier otra función de Pandora FMS, ya que se guardan como módulos de un agente.

1.1 Arquitectura y funcionamiento

(IMAGEN PENDIENTE DE HACER)

Necesitará instalar la sonda pandora-ntop en una máquina que tenga acceso al tráfico de su red LAN, generalmente instalándola en un servidor Linux con acceso al tráfico (si este actúa de router o firewall), o bien redireccionando el tráfico a un puerto por medio de un port-mirror desde un switch, firewall o router. También puede duplicar el tráfico en un sólo sentido por medio de un TAP, pero requerirá un equipamiento hardware específico. Es importante que entienda que si instala Pandora NTA en un equipo ordinario, que no reciba todo el tráfico de la red, solo observará el tráfico generado por esa máquina, no el resto de la red.

Pandora-NTOP escuchará el tráfico y generará datos que no almacenará en ningún sitio (los mantiene en memoria). Pandora-NTA enviará los datos recogidos por Pandora-NTOP y los enviará a Pandora FMS Data Server. Puede instalar tantos Pandora-NTA como necesite, si tiene varias redes locales.

Pandora NTA además ofrece información relativa a problemas en su red local en tiempo real, ya que puede generar eventos de tres tipos:

  • Máscara inválida (Wrong netmask).
  • Envío de datos por el puerto p (Host sent data to zero port).
  • Dirección MAC Duplicada (Duplicated mac).

Puede crear alertas de eventos para conocer en tiempo real, por ejemplo, cuando aparece una MAC duplicada en su sistema.

1.2 Instalación

1.2.1 Requisitos

La parte de Perl de Pandora NTA necesita algunas dependencias, además, por supuesto, de disponer de un intérprete de Perl en la máquina donde corre.

Para saber si falta alguna dependencia basta con ejecutar el script principal con la opción -h y si aparece un error en vez de una ventana de ayuda significa que faltan dependencias. De este error se pueden ver cuales son y se pueden instalar o bien con CPAN o directamente bajando los paquetes de Perl desde los repositorios oficiales de cada distribución.

De la parte binaria de Pandora NTA basada en ntop (pandora-ntop), se puede obtener el código para su compilación desde nuestro repositorio público de github (https://github.com/pandorafms), o bien utilizar uno de los binarios precompilados que distribuimos en Sourceforge (https://sourceforge.net/projects/pandora/files/) Viene distribuida por defecto en las imágenes ISO de instalación de Pandora FMS a partir de NG 732.

NOTA: Crear un script lanzador en systemd

1.2.2 Configuración de Pandora NTA

Parámetros aceptados por linea de comandos

-h: Muestra la ayuda.
-f: Ruta del fichero de configuración. No es necesario porque se puede usar la configuración por defecto. El usuario debe tener permisos de lectura sobre el archivo.

Parámetros del fichero de configuración pandora_nta.conf

daemon

Si se pone a 1 el programa se ejecuta en segundo plano (0 por defecto).


encoding

Encoding de los XML que se envían a través de Tentacle. Irá en la cabecera del XML (UTF-8 por defecto).


interval

Intervalo en segundos entre dos ciclos de trabajo del Pandora NTA (300 segundos, es decir, 5 minutos, por defecto).


log_file

Fichero donde volcar los logs de la aplicación. Tiene que tener permisos de escritura sobre el fichero y la carpeta que lo contiene. Si no existe, Pandora NTA lo crea automáticamente (por defecto lo vuelca a STDOUT).


retries

Número de fallos consecutivos que puede dar la aplicación para que se considera que hay un error grave y se pare. Si está a 0 no se para nunca, por muchos fallos que haya (2 por defecto).


transfer_timeout

Tiempo máximo en segundos para enviar los ficheros por Tentacle. Si se excede este tiempo, Pandora NTA reinicia todo su estado y memoria (15 segundos por defecto).


verbose

Nivel de información que sale por el log. Cuanto más alto, más información arroja. Con 0 no se muestra nada, con 3 se muestran los errores graves, con 5 se muestran warnings y con 9 se muestra todo. No se recomiendan valores muy altos para que no consuma mucho disco (3 por defecto).


cache_file

Carpeta donde está el fichero de caché de la aplicación. Es necesario escribir en este fichero. Si no está creado, pandora NTA lo crea. Hay que tener cuidado al cambiarlo, pues puede que cree uno nuevo y se dupliquen los agentes que manda a Pandora puesto que no encuentra sus nombres y generará otros nuevos (* /tmp/pandorata_cache.json*).


ntop_host

Host a donde hacer las peticiones al servidor web de Pandora-NTOP (por defecto localhost).


ntop_port

Puerto mediante el que se hacen las peticiones al proceso de Pandora-NTOP (por defecto 3000).


ntop_local_subnets

Subredes que son consideradas como locales por NTOP. Si se quiere especificar más de una subred, se puede hacer concatenándolas mediante comas (por ejemplo ntop_local_subnets 192.168.50.0/24,114.15.0.0/16.

  • IMPORTANTE* Si no hay ninguna subred configurada se volcará información a Pandora de todos los host que NTOP descubra (opción de todos los hosts por defecto). Por favor, asegúrese de configurar al menos una red local.


ntop_logs_to_syslog

Si se pone a 1 NTOP vuelca sus logs a syslog. En caso contrario no los vuelca a ningún situo (0 por defecto).


self_name

Alias del agente de automonitorización. Una vez que se ha creado el fichero de caché no se puede cambiar ya que el Data Server no admite que se cambie el alias mediante XML (por defecto pandoraNTA).


tentacle_host

Host donde está el servidor de Tentacle que va a recibir los XML (por defecto localhost).


tentacle_port

Puerto donde está escuchando el servidor de Tentacle que va a recibir los XML (por defecto 41121).

1.2.3 Despliegue y arranque

El script pandora_db borra los datos de histórico de más de 7 dias. En un futuro esperamos poder personalizar ese período de datos.

1.3 Visualización

Por defecto (aunque este comportamiento se puede modificar en la configuracion de pandora_nta.conf) se creará un agente llamado PandoraNTA que contendrá varias métricas:

  • El estado del sistema NTA
  • El nº de IP's descubiertas por el sistema.
  • Suma del caudal de tráfico de toda la red (entrada y salida).
  • Tasa de transferencia actual de la red (entrada y salida).
  • Paquetes en la red (entrada y salida).

Además el sistema creará un agente por cada una de las IP's que encuentre en su red local (tal como haya definido en pandora_nta.conf).

Para cada IP gestionada, monitorizará los mismos parámetros:

  • Suma del caudal de tráfico de toda la red (entrada y salida).
  • Tasa de transferencia actual de la red (entrada y salida).
  • Paquetes en la red (entrada y salida).
  • Dirección MAC asociada a la IP.

1.4 Informes

Dispondrá de un informe específico de NTA al crear [informes:

Pandora NTA report create.png

Este informe muestra un top-N de consumo de red en los últimos X días de todas las IP analizadas por Pandora NTA:

Pandora NTA sample report 1.png