Difference between revisions of "Pandora: Documentation es: Netflow"

From Pandora FMS Wiki
Jump to: navigation, search
m (Filtros)
(Informes)
Line 339: Line 339:
 
*'''Description''': Descripción del elemento.
 
*'''Description''': Descripción del elemento.
 
*'''Period''': Longitud del intervalo de datos a mostrar.
 
*'''Period''': Longitud del intervalo de datos a mostrar.
*'''Resolution''': Los datos se leerán en bloques de un tamaño igual a la resolución. Si Periodo / Resolución es mayor que la máxima resolución configurada la resolución se ajustará de forma dinámica. Por ejemplo, para un periodo de 1 día y una resolución de 1 hora se dibujarán 24 puntos en la gráfica.
+
*'''Resolution''': Algunos informes requiren que se recojan muestras cada cierto periodo. Este parámetro sirve para definir el número de muestras. La resolución puede ser baja (6 muestras), media (12 muestras), alta (24 muestras) ultra alta (30 muestras). Hay dos valores especiales (''hourly'' y ''daily'' para que no se recoja un valor fijo de muestras sino una cada cierto periodo.
 
*'''Max. values''':  Número máximo de elementos para agregados. Por ejemplo, si una gráfica de tráfico HTTP está agregada por dirección IP de origen y Max. values se configura a 5, sólo se mostrarán 5 direcciones IP.
 
*'''Max. values''':  Número máximo de elementos para agregados. Por ejemplo, si una gráfica de tráfico HTTP está agregada por dirección IP de origen y Max. values se configura a 5, sólo se mostrarán 5 direcciones IP.
  
Hay cinco tipos de elementos de informe de netflow:
+
Hay tres tipos de elementos de informe de netflow:
  
 
* '''Netflow area chart''': Una gráfica de área, agregada o sin agregar.
 
* '''Netflow area chart''': Una gráfica de área, agregada o sin agregar.
Line 350: Line 350:
 
<center>
 
<center>
 
[[Image:Netflow_chart_area_aggregated.png|600px]]
 
[[Image:Netflow_chart_area_aggregated.png|600px]]
</center>
 
<br>
 
<br>
 
 
* '''Netflow pie chart''': Una gráfica de tarta agregada.
 
 
<br>
 
<br>
 
<center>
 
[[Image:Netflow_chart_pie.png|300px]]
 
 
</center>
 
</center>
 
<br>
 
<br>
Line 374: Line 364:
 
<br>
 
<br>
  
* '''Netflow statistics chart''': Una representación en texto de la gráfica de tarta.
+
* '''Netflow summary chart''': Resumen de tráfico para el periodo dado. Hay tres elementos: una tabla con información global, un gráfico de tarta con las IPs o puertos más relevantes y una tabla con la misma información del gráfico de tarta desglosada.
 
 
<br>
 
<br>
 
<center>
 
[[Image:Netflow_table_statistics.png]]
 
</center>
 
<br>
 
<br>
 
 
 
* '''Netflow summary chart''': Resumen de tráfico para el periodo dado.
 
  
 
<br>
 
<br>

Revision as of 05:53, 27 March 2019

Volver a Índice de Documentacion Pandora FMS

1 Introducción al análisis de red en tiempo real

Pandora FMS utiliza dos sistemas alternativos y complementarios para analizar la red en tiempo real: Pandora NTA y Netflow.Ambos sistemas utilizan el mismo principio: "escuchar" el cable ethernet de manera continua y analizar el tráfico para generar estadísticas. En ambos casos hay que, de alguna manera, "interceptar" el tráfico de la red para enviarlo a una sonda que lo analice y envíe esos resultados a Pandora FMS.

Para interceptar el tráfico de la red y poder analizarla, hace falta tener acceso físico a esa red o al menos entender su topología, ya que el punto de captura de la red debe ser el más apropiado. No es lo mismo, por ejemplo, capturar el tráfico de la red de un router o AP local, que el de todo el tráfico de la red de servidores justo antes de llegar al router de salida.

Existen dos maneras para capturar el tráfico:

  • Redirigir el tráfico de un puerto del switch a otro puerto mediante un "port-mirror". No todos los dispositivos de red permiten hacerlo (sólo los de gama alta/media). También se puede hacer un port-mirror en algunos firewalls comerciales. Es la forma más sencilla de interceptar el tráfico y no requiere hardware adicional. Al enviar todo el tráfico hacia un puerto, ese puerto se conecta directamente al analizador de red (sonda netflow o pandora nta/ntop).
  • Capturar el tráfico mediante un network TAP . Un tap es un dispositivo de red muy sencillo que copia el tráfico de una boca a otra en un solo sentido (es imposible interferir en la red). Es un dispositivo PASIVO que no se puede "caer" ni causar molestias de ningún tipo ya que es una copia física conducida por hardware del tráfico de red. Es indetectable. Hay TAPs desde 12€ a 900€, pero el principio es el mismo. El tap genera una salida para cada dirección de la comunicación, por lo que necesitará una sonda que escuche en dos puertos, o limitarse a escuchar una única dirección.

Basic-network-tap.jpg Ejemplo real de un TAP de 12€

Basic-network-tap-2.jpg Ejemplo real de un TAP de 35€

Si vamos a usar Netflow para analizar nuestra red únicamente mediante Pandora FMS y disponemos de un switch o firewall de gama alta, se podrá realizar la monitorización de manera más sencilla. Esto se debe a que estos dispositivos permiten enviar información estadística del flujo de red directamente al recolector de Netflow de Pandora FMS sin necesidad de usar una sonda independiente. Se debe consultar las características del hardware para saber si puede habilitar el netflow y enviar los flujos a un colector de Netflow independiente (en este caso, el colector de netflow de Pandora FMS).

En resumen, este podría ser un escenario de trabajo para poder analizar el tráfico de red en tiempo real. Para ello solo sería necesario un par de TAPS de 12€ (o un par de port-mirrors) y la version OpenSource de Pandora FMS:

Diagram-how-to-use-a-network-tap.png

2 Monitorización de red con Netflow

2.1 Introducción a Netflow

A partir de la versión 5.0, Pandora FMS es capaz de monitorizar el tráfico IP haciendo uso del protocolo NetFlow. Permite mostrar patrones y datos generales del tráfico que resultan de gran utilidad.

NetFlow es un protocolo de red, desarrollado por Cisco Systems para recolectar información sobre tráfico IP. Netflow se ha convertido en un estándar de la industria para monitorización de tráfico de red, y actualmente está soportado para varias plataformas además de Cisco IOS y NXOS, como por ejemplo en dispositivos de fabricantes como Juniper, Enterasys Switches, y en sistemas operativos como Linux, FreeBSD, NetBSD y OpenBSD.



Netflow architecture.png



Hace algún tiempo escribimos un artículo en nuestro blog hablando de Netflow, échale un vistazo para conocer más sobre este protocolo: https://blog.pandorafms.org/es/que-es-netflow/

2.1.1 Protocolo Netflow

Los dispositivos con Netflow habilitado, cuando activan esta característica generan "registros de netflow" que consisten en pequeños trozos de información que envian a un dispositivo central (servidor de Netflow o colector Netflow), que es quien recibe información de los dispositivos (sondas Netflow) para almacenarla y procesarla.

Esa información se transmite mediante el protocolo netflow, basado en UDP o SCTP. Cada registro de netflow es un paquete pequeño que contiene una cantidad minima de información, pero en ningún caso contiene los datos crudos o en bruto del tráfico, es decir, no envia el "payload" del tráfico que circula por el colector sino sólo datos estadísticos.

Existen varias diferencias entre la version de implementación del Netflow original, por lo que algunas versiones incorporan algunos datos más, pero en líneas generales, el Netflow básico envía al menos la siguiente información.

El Netflow se ha definido de muchas maneras. La definición tradicional de Cisco es utilizar una clave de 7 elementos, donde el flujo se define como una secuencia unidireccional de paquetes que comparten los siguientes 7 valores:

  • Dirección IP de origen.
  • Dirección IP de destino.
  • Puerto UDP o TCP de origen.
  • Puerto UDP o TCP de destino.
  • Protocolo IP.
  • Interfaz (SNMP ifIndex)
  • Tipo de servicio IP

Con el tiempo, otros fabricantes han diseñado sistemas silimares para sus dispositivos de red, con diferentes nombres pero propósito similar

  • Jflow o cflowd de Juniper Networks
  • NetStream de 3Com/H3C|HP
  • NetStream de Huawei
  • Cflowd de Alcatel Lucent
  • Rflow de Ericsson
  • AppFlow
  • sFlow

2.1.2 Colector Netflow

Se trata de un dispositivo (PC o servidor) ubicado en la red para recoger toda la información de NetFlow que es enviada desde los routers y switches.

NetFlow genera y recoge esta información, pero se necesita un software que permita almacenar y analizar dicho tráfico. Con Pandora FMS, utilizaremos un servidor especial para este propósito, que Pandora FMS levanará y parará cuando se arranque Pandora. Este servidor, se llama nfcapd y es necesario instalarlo para poder usar monitorización Netflow.

2.1.3 Sonda Netflow

Las sondas son generalmente Routers con el netflow habilitado, configurado, y enviando información al colector Netflow (que en este caso será el servidor de Pandora con el demonio nfcapd habilitado.



NewNetFlowApproach.png



En nuestro blog publicamos un extenso artículo técnico sobre cómo construir una sonda de Netflow utilizando una Raspberry de 60 euros: https://blog.pandorafms.org/es/sonda-netflow-con-raspberry/

2.2 Requisitos e instalación

Pandora FMS utiliza una herramienta OpenSource llamada nfcapd para procesar todo el trafico netflow. Este demonio lo levanta de forma automática el servidor de Pandora FMS. Este sistema almacena los datos en ficheros binarios, en una ubicación determinada. Debe instalar nfcapd en su sistema antes de proder trabajar con Netflow en Pandora. El demonio nfcapd por defecto escucha en el puerto 9995/UDP, por lo que tendrá que tenerlo en cuenta si tiene firewalls para abrir este puerto y a la hora de configurar sus sondas Netflow.

2.2.1 Instalacion de nfcapd

La instalacion de nfcapd requiere que usted lo instale por su cuenta, Pandora FMS no lo instalará. Para más información, vaya a la página oficinal del proyecto nfcapd

Pandora por defecto usa el directorio /var/spool/pandora/data_in/netflow para procesar la informacion, de manera que cuando arranque nfcapd utilizará este directorio. No lo modifique si no sabe exactamente qué está haciendo.

Info.png

Es necesario que instale la version 1.6.8p1 de nfdump para poder usarla con Pandora FMS

 


Si quiere comprobar que nfcapd esté correctamente instalado puede probar a ejecutar el siguiente comando para iniciar el proceso en primer plano:

nfcapd -l /var/spool/pandora/data_in/netflow

Si todo va bien, debería obtener una salida similar a esta:

Add extension: 2 byte input/output interface index
Add extension: 4 byte input/output interface index
Add extension: 2 byte src/dst AS number
Add extension: 4 byte src/dst AS number
Add extension: 4 byte output bytes
Add extension: 8 byte output bytes
Add extension: NSEL Common block
Add extension: NSEL xlate ports
Add extension: NSEL xlate IPv4 addr
Add extension: NSEL xlate IPv6 addr
Add extension: NSEL ACL ingress/egress acl ID
Add extension: NSEL username
Add extension: NSEL max username
Add extension: NEL Common block
Bound to IPv4 host/IP: any, Port: 9995
Startup.
Init IPFIX: Max number of IPFIX tags: 62

Template warning.png

Tenga en cuenta que es necesario que Pandora FMS, y en concreto el servidor WEB que ejecuta la consola, tenga acceso a esos ficheros de datos, en este ejemplo, en /var/spool/pandora/data_in/netflow

 


2.2.2 Instalación de sondas

Si no dispone de un router con Netflow, pero su tráfico "pasa" por un sistema Linux, puede instalar un software que actúe de sonda, y envíe información de tráfico Netflow al colector.

En Linux existe un programa llamado fprobe que captura el tráfico y lo reenvia a un servidor NetFlow. Con él puede generar tráfico Netflow, de todo el tráfico de red que pasa por sus interfaces.

Para descargar el paquete rpm basta con ejecutar el siguiente mandato, y posteriormente instalarlo:

wget http://repo.iotti.biz/CentOS/7/x86_64/fprobe-1.1-2.el7.lux.x86_64.rpm
yum install fprobe-1.1-2.el7.lux.x86_64.rpm

Por ejemplo ejecutando el siguiente comando se enviará todo el tráfico del interfaz eth0 al colector Netflow escuchando en el puerto 9995 de la IP 192.168.70.185:

/usr/sbin/fprobe -i eth0 192.168.70.185:9995

Una vez generado tráfico, podrá ver estadísticas de este tráfico en el colector Netflow con el comando:

nfdump -R /var/spool/pandora/data_in/netflow

Que debe mostrarle informacion similar a la siguiente:

Aggregated flows 1286
Top 10 flows ordered by packets:
Date flow start          Duration Proto      Src IP Addr:Port          Dst IP Addr:Port   Packets    Bytes Flows
2011-12-22 20:41:35.697   901.035 TCP     192.168.60.181:50935 ->     192.168.50.2:22        2105   167388     4
2011-12-22 20:41:35.702   900.874 TCP       192.168.50.2:22    ->   192.168.60.181:50935     1275   202984     4
2011-12-22 20:48:15.057     1.347 TCP       157.88.36.34:80    ->    192.168.50.15:40044      496   737160     1
2011-12-22 20:48:14.742     1.790 TCP     91.121.124.139:80    ->    192.168.50.15:60101      409   607356     1
2011-12-22 20:46:02.791    76.616 TCP      192.168.50.15:80    ->   192.168.60.181:40500      370   477945     1
2011-12-22 20:48:15.015     1.389 TCP      192.168.50.15:40044 ->     157.88.36.34:80         363    22496     1
2011-12-22 20:46:02.791    76.616 TCP     192.168.60.181:40500 ->    192.168.50.15:80         303    24309     1
2011-12-22 20:48:14.689     1.843 TCP      192.168.50.15:60101 ->   91.121.124.139:80         255    13083     1
2011-12-22 20:48:14.665     1.249 TCP     178.32.239.141:80    ->    192.168.50.15:38476      227   335812     1
2011-12-22 20:48:21.350     0.713 TCP     137.205.124.72:80    ->    192.168.50.15:47551      224   330191     1  

Top 10 flows ordered by bytes:
Date flow start          Duration Proto      Src IP Addr:Port          Dst IP Addr:Port   Packets    Bytes Flows
2011-12-22 20:48:15.057     1.347 TCP       157.88.36.34:80    ->    192.168.50.15:40044      496   737160     1
2011-12-22 20:48:14.742     1.790 TCP     91.121.124.139:80    ->    192.168.50.15:60101      409   607356     1
2011-12-22 20:46:02.791    76.616 TCP      192.168.50.15:80    ->   192.168.60.181:40500      370   477945     1
2011-12-22 20:48:14.665     1.249 TCP     178.32.239.141:80    ->    192.168.50.15:38476      227   335812     1
2011-12-22 20:48:21.350     0.713 TCP     137.205.124.72:80    ->    192.168.50.15:47551      224   330191     1
2011-12-22 20:48:15.313     1.603 TCP       89.102.0.150:80    ->    192.168.50.15:52019      212   313432     1
2011-12-22 20:48:14.996     1.433 TCP     212.219.56.138:80    ->    192.168.50.15:36940      191   281104     1
2011-12-22 20:51:12.325    46.928 TCP      192.168.50.15:80    ->   192.168.60.181:40512      201   245118     1
2011-12-22 20:52:05.935    34.781 TCP      192.168.50.15:80    ->   192.168.60.181:40524      167   211608     1
2011-12-22 20:41:35.702   900.874 TCP       192.168.50.2:22    ->   192.168.60.181:50935     1275   202984     4

Summary: total flows: 1458, total bytes: 5.9 M, total packets: 15421, avg bps: 49574, avg pps: 15, avg bpp: 399
Time window: 2011-12-22 20:40:46 - 2011-12-22 20:57:21
Total flows processed: 1458, Records skipped: 0, Bytes read: 75864
Sys: 0.006s flows/second: 208345.2   Wall: 0.006s flows/second: 221177.2  

Si tiene este sistema funcionando, lo siguiente será configurar Pandora FMS para que utilice esta configuración.

2.3 Como operar con Netflow en Pandora

Pandora FMS trabaja con Netflow como un sistema auxiliar, es decir, no almacena la información de Netflow en la base de datos. Pandora muestra esta información como informes solicitados bajo demanda.

Pandora opera con Netflow usando el concepto de "Filtro" que es un conjunto de reglas para especificar un tráfico determinado, estas reglas pueden ser algo tan sencillo como "Todo el tráfico de la red 192.168.70.0/24" o algo mas complejo usando expresiones pcap.

Una vez definidos los filtros, definiremos los informes, que son como queremos ver los datos (graficos, listas...) y en que intervalo de tiempo. Al definir filtros e informes dejamos definida esa información, de forma similar a como se opera con los informes de Pandora, para utilizarla -bajo demanda- cuando queramos.

Los informes Netflow aparecerán también como "tipo de informe" en la seccion de Informes generales de Pandora, para poderlos "incorporar" a los informes "normales" de Pandora.

Por otro lado, disponemos de una consola de "tiempo real" para analizar el tráfico, componiendo directamente las reglas, útil para investigar problemas, ver graficas puntuales que no corresponden a un filtro determinado, etc.

2.3.1 Configuración

En primer lugar, hay que habilitar Netflow para que sea accesible desde los menús Operación y Administración. En el apartado de configuracion (menu administracion) hay una opción para habilitar o deshabilitar el Netflow globalmente.



Netflow1.png



Una vez activado, aparecerá una nueva opción de configuración de Netflow en la sección de configuración.



Netflow2.png



Se debe configurar correctamente este apartado para que el demonio nfcapd pueda iniciarse sin problemas junto con el servidor de Pandora FMS:

  • Data storage path: Directorio donde se almacenarán los ficheros de datos de netflow.
  • Daemon interval: Intervalo de tiempo en segundos después del cual se rotan los ficheros de datos. Se recomienda un valor de 3600. Un intervalo mayor significa ficheros más grandes potencialmente, lo que significa menos sobrecarga de E/S. Pero también hace que encontrar datos para un intervalo específico sea más lento.
  • Daemon binary path: Ruta al binario de nfcapd.
  • Nfdump binary path: Ruta al binario de nfdump.
  • Nfexpire binary path: Ruta al binario de nfexpire.
  • Maximum chart resolution: Número máximo de puntos que mostrará una gráfica de área de netflow. Cuanto más alta la resolución peor el rendimiento. Se recomiendan valores entre 50 y 100.
  • Disable custom live view filters: Desabilita la definición de filtros personalizados desde la vista de Netflow (solo permitiría el uso de filtros ya creados).
  • Max. Netflow lifespan: Indica el máximo tiempo en días de datos Netflow que se almacenarán.
  • Enable IP address name resolution: Permite la resolución de IPs para tratar de obtener los hostname de los dispositivos Netflow.

Template warning.png

La velocidad de acceso del disco en el que residen los datos de Netflow es normalmente el factor limitante del rendimiento

 


Una vez configurado el Netflow, habrá que reiniciar el servidor de Pandora FMS para que éste levante el servidor nfcapd. Este debe estar correctamente instalado antes de intentar arrancarlo. Compruebe los logs del servidor ante cualquier duda.

Info.png

El servidor Netflow no aparecerá como servidor en la vista de servidores de Pandora, ya que no es un servidor de Pandora FMS

 


2.4 Filtros

El menú para la creación y edición de filtros se encuentra en "Resources > Netflow filters". En esta vista, encontramos un listado de los filtros ya creados que pueden ser modificados y borrados.


Netflow3.png



También se puede crear un filtro directamente desde la vista de "Netflow live view", guardando el filtro activo como uno nuevo. Los filtros Netflow pueden ser "básicos" o "avanzados". La diferencia está en que los primeros tienen unos campos fijos de filtrado (IP origen, IP destino, Puerto origen, puerto destino) y los avanzados se definen mediante una expresión pcap (estándar en expresiones de filtrado para tráfico de red) y utilizan herramientas de todo tipo.

Esta sería una vista de edición básica de un filtro netflow:

Netflow4.png



  • Name: Es aconsejable que el nombre del filtro sea descriptivo.
  • Group: Un usuario solo podrá crear un filtro o editar un filtro de un grupo al que tenga acceso.
  • Filter: Existen dos tipos de filtros, básico y avanzado. El filtro avanzado permite introducir expresiones avanzadas en el mismo formato que nfdump. El filtro básico permite filtrar el tráfico por ip origen, ip destino, puerto origen y puerto destino. Son válidas las listas de Ips y puertos separados por comas.
  • Aggregate by: El tráfico se agrupará siguiendo alguno de éstos criterios:

IP Origen: se muestra el tráfico para cada IP de origen diferente.
IP Destino: se muestra el tráfico para cada IP de destino diferente.
Puerto Origen: se muestra el tráfico para cada puerto de origen diferente.
Puerto Destino: se muestra el tráfico para cada puerto de destino diferente.
Protocolo: se muestra el tráfico para cada protocolo diferente.
Ninguno: (los datos serán totalizados).

Por ejemplo, este sería un filtro básico para tráfico web:



Netflow5.png



O por ejemplo un filtro avanzado para tráfico desde y hacia una intranet:



Netflow6.png



Más ejemplos de filtros avanzados:

  • Capturar el tráfico entrante o saliente de 192.168.0.1:
host 192.168.0.1
  • Capturar el tráfico entrante en 192.168.0.1:
dst host 192.168.0.1
  • Capturar el tráfico saliente de 192.168.0.0/24:
src net 192.168.0.0/24
  • Capturar el tráfico de HTTP y HTTPS:
(port 80) or (port 443)
  • Capturar todo el tráfico excepto el de DNS:
port not 53
  • Capturar el tráfico to 192.168.0.1 del protocolo SSH:
(port 22) and (dst host 192.168.0.1)

2.5 Informes

Los informes de Netflow están integrados con los informes de Pandora FMS (ver Informes para más información).

Para crear un elemento de informe, elija uno de los elementos de informe de netflow disponibles.



Netflow7.png



Y configúrelo. Las siguientes opciones de configuración están disponibles:



Netflow8.png



  • Type: Los tipos de elemento se explicarán a continuación.
  • Filter: Filtro de netflow a usar.
  • Description: Descripción del elemento.
  • Period: Longitud del intervalo de datos a mostrar.
  • Resolution: Algunos informes requiren que se recojan muestras cada cierto periodo. Este parámetro sirve para definir el número de muestras. La resolución puede ser baja (6 muestras), media (12 muestras), alta (24 muestras) ultra alta (30 muestras). Hay dos valores especiales (hourly y daily para que no se recoja un valor fijo de muestras sino una cada cierto periodo.
  • Max. values: Número máximo de elementos para agregados. Por ejemplo, si una gráfica de tráfico HTTP está agregada por dirección IP de origen y Max. values se configura a 5, sólo se mostrarán 5 direcciones IP.

Hay tres tipos de elementos de informe de netflow:

  • Netflow area chart: Una gráfica de área, agregada o sin agregar.



Netflow chart area aggregated.png



  • Netflow data chart: Una representación en texto de la gráfica de área.



Netflow table data.png



  • Netflow summary chart: Resumen de tráfico para el periodo dado. Hay tres elementos: una tabla con información global, un gráfico de tarta con las IPs o puertos más relevantes y una tabla con la misma información del gráfico de tarta desglosada.



Netflow9.png



2.6 Vista en tiempo real

Esta vista se utiliza para consultar el histórico de datos capturados en base a diferentes filtros de búsqueda. Se pueden usar filtros y diferentes formas de visualización de información. Se debe definir la manera de agrupar la información mostrada, así como la manera de obtener dicha información para poder empezar a visualizar datos.

Netflow view1.png

La manera de obtener la información puede ser por: IP de origen, IP de destino, Puerto de origen o Puerto de destino. Si se escoge, por ejemplo, mostrar la información IP de destino se mostrará la información ordenada por las IP's con más tráfico hacia el destino de mayor a menor. Lo mismo sería para saber el consumo de su red por protocolo, escogiendo por puerto de destino.

Las maneras de visualización posibles son las siguientes:

  • Gráficas de área (de tipo stacked): muestra a lo largo del tiempo (desde la fecha de origen a la fecha de destino), la evolución de los datos. Se debe escoger el nivel de precisión de la gráfica en el token "Resolución".

Netflow grafico area.png

  • Sumario: Muestra una tabla resumen, una tarta y una tabla con los datos de todo el periodo.

Netflow grafico sumario.png

  • Detallado: Muestra un mapa de porciones que representa el tráfico por IP.

Netflow grafico detailed.png.png

  • Tabla de datos: Muestra una tabla de datos con cada IP y un número de filas que depende de la resolución elegida.

Netflow datatable.png

  • Gráfico circular: Muestra un gráfico interactivo circular que representa los pares de conexiones entre IP y volumen de tráfico.

Netflow bola.png

Los filtros se pueden visualizar en tiempo real desde "Operation > Netflow Live View". Esta herramienta permite visualizar los cambios que se realizan en un filtro y guardarlo una vez se obtenga el resultado deseado. También es posible cargar y modificar filtros ya existentes.

Vaya a informes y filtros para aprender a configurar las opciones de la vista en tiempo real.

2.7 Mapas de tráfico de red

Esta es una nueva característica introducida en el OUM 733 y que será mejorada en el futuro. Crea mapas de red dinámicos, basados en el tráfico entre nodos. Muestra la relación (conexiones) entre diferentes direcciones, mostrando las N conexiones más importantes (por tamaño de los datos transferidos entre ellas).

Network Usage map.jpg

2.8 Configuración distribuida

Template wip.png

We are working on the translation of the Pandora FMS documentation. Sorry for any inconvenience.

 


Es posible ubicar el nodo de pandora que recoge datos de Netflow en un host independiente de la consola. En entornos con muchos datos Netflow es más que recomendable ubicarlo en un servidor con discos rápidos y una CPU rápida de al menos dos núcleos. Para que la consola de Pandora pueda extraer datos de Netflow será necesario modificar la configuración por defecto del sistema, siguiendo los pasos descritos a continuación:

  • Configurar la autenticación automática SSH entre el usuario propietario del demonio web y el usuario con capacidad de ejecutar nfdump en el nodo colector.

Para su configuración debemos seguir los siguientes pasos:

Habilitar el usuario apache. Para ello hay que modificar en el fichero /etc/passwd la linea del usuario apache con esta configuración:

apache:x:48:48:Apache:/var/www:/bin/bash

Crear el directorio .ssh dentro del directorio /var/www y darle los permisos correctos:

#mkdir /var/www/.ssh
#chown apache:apache /var/www/.ssh

Crear claves ssh desde el usuario apache y copiarlas al servidor donde esté alojado el tráfico netflow.

#su apache
bash-4.2$ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/var/www/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/www/.ssh/id_rsa.
Your public key has been saved in /var/www/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:vYvl5V00E4faa14zN08ARzGUQ9IfAQJnMzkaqLAGRHI [email protected]<server>
The key's randomart image is:
+---[RSA 2048]----+
|+oE     ...*o=B+.|
|.o .   . .oo+o++ |
|  . o .   o o o+o|
|   o .   o   =  +|
|  .     S . . oo.|
|           .   +o|
|          o . o+=|
|         + + + +*|
|        . o . o .|
+----[SHA256]-----+
bash-4.2$ ssh-copy-id [email protected]<netflow_server>

Una vez compartida se debe comprobar que es posible acceder al servidor mediante el usuario apache sin indicar contraseña:

bash-4.2$ ssh [email protected]<netflow_server>
  • Crear un script en la consola de pandora que reemplace a /usr/bin/nfdump por uno similar al siguiente
#!/bin/bash
NFDUMP_PARAMS=$(sed 's/(\(.*\))/\"\(\1\)\"/' <<< "[email protected]");

ssh [email protected]<netflow_server> "/usr/bin/nfdump $NFDUMP_PARAMS"

Dar permisos de ejecución al script:

chmod 755 /usr/bin/nfdump

Probar a ejecutar el script, de esta forma

/usr/bin/nfdump -V

Debería devolver algo similar a:

nfdump: Version: 1.6.13

3 Monitorización de red con Pandora NTA

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. Es importante destacar que ofrecen funcionalidades ligeramente diferentes,Netflow muestra información (relativa a los puertos) que Pandora NTA no muestra y Netflow permite una interfaz en tiempo real mucho más avanzada, así como características únicas como poder crear módulos de datos como resultado de filtros avanzados de expresiones PCAP.

Como base de Pandora NTA/NTOP se utiliza un fork del proyecto NTOP (de la versión licenciada como GPL2), además de código propio del proyecto Pandora FMS. Se encarga de recoger los datos y enviárselos en forma de XML al servidor de Pandora FMS. Todo ese código está disponible en nuestro repositorio público para el que lo quiera, debido a que se trata de 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 se 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 ofrece:

  • Consumo detallado por tráfico de entrada y salida de cada IP local de la red local.
  • Detección de problemas de red (mediante la generación de eventos).
  • Informes específicos del consumo de red, por IP de origen.
  • Una relación de las IP's de destino con más tráfico por IP de origen en la red.
  • Informes de consumo de red local por origen, mapas dinámicos y opciones de búsqueda y filtrado con los datos acumulados.

Con los datos individuales del tráfico de cada equipo de la red, 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.

3.1 Arquitectura y funcionamiento

Se necesitará instalar la sonda Pandora-NTOP en una máquina que tenga acceso al tráfico de la red LAN, generalmente en un servidor Linux que actúa como 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 se puede duplicar el tráfico en un sólo sentido por medio de un TAP, pero requerirá un equipamiento hardware específico.

Info.png

Es importante que se entienda que si se instala Pandora NTA en un equipo ordinario, sin realizar previamente un portmirror o conectar un TAP que redirija tráfico a dicha máquina, no se recibirá todo el tráfico de la red, solo se 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 sin almacenarlos en ningún sitio (los mantiene en memoria). Pandora NTA enviará los datos recogidos por Pandora-NTOP a Pandora FMS Data Server. Se puede instalar tantos Pandora NTA como se necesite, si existen varias redes locales y varios puntos de escucha, se puede realizar un despliegue distribuido.

Pandora NTA además ofrece información relativa a problemas en la 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).

Se puede crear alertas de eventos para conocer en tiempo real, por ejemplo, cuando aparece una MAC duplicada en su sistema. Se deben utilizar las cadenas de texto en inglés descritas anteriormente para crear una alerta de evento.

3.2 Instalación

Actualmente se dispone de un tarball compatible con CentOS 7. Se distribuye comprimido en un tgz, disponible en la librería de módulos de Pandora FMS en https://pandorafms.com/library. Para instalarlo hay que descomprimirlo:

tar xvzf pandora_nta.tgz

Después hay que ejecutar el script de instalación dentro del directorio descomprimido.

cd pandora_nta_tarball
./install_pandora_nta.sh --install

Para desinstalar el Pandora NTA hay que lanzar el mismo script de la siguiente forma:

./install_pandora_nta.sh --uninstall

Si se encuentra instalada la versión de Pandora FMS distribuida en ISO, ya estará instalado en el sistema, teniendo solo que activarlo (A partir de OUM 733).

Para arrancarlo, en un CentOS7 bastará con ejecutar

systemctl start pandora_nta

3.2.1 Requisitos

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

Pandora NTA usa módulos externos de Perl. Algunos de ellos forman parte del Core y otros se distribuyen en las instalaciones normales del intérprete. Esta es la lista de los módulos externos que se usan:

  • Getopt::Std
  • Config::Simple
  • LWP::Simple
  • Sys::Hostname
  • JSON
  • POSIX
  • MIME::Base64
  • XML::Simple
  • Digest::SHA

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. Con este error se pueden ver cuales son y se pueden instalar 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 el repositorio público de github (https://github.com/pandorafms), o bien utilizar uno de los binarios precompilados que se distribuyen en lalibrería de modulos de Pandora FMS en https://pandorafms.com/library). Viene distribuida por defecto en las imágenes ISO de instalación de Pandora FMS a partir de NG 733.

3.3 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 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 antes de que se considere que hay un error grave y se pare. Si está a 0 no se parará 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 reiniciará todo su estado y memoria (15 segundos por defecto).

verbose

Nivel de información volcada 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).

quiet

No muestra los mensajes de error.

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 se cree uno nuevo y se dupliquen los agentes que mandan información a Pandora, puesto que no encuentre sus nombres y generaría otros nuevos (* /tmp/pandorata_cache.json*).

ntop_host

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

ntop_port

Puerto mediante el que se realizan las peticiones de 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.

Template warning.png

Si no hay ninguna subred configurada se volcará información a Pandora de todos los host que NTOP descubra (opción 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 sitio (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 para recibir los XML (por defecto 41121).

temp_dir

Directorio donde se escriben los XML para que el cliente de Tentacle los envíe. Tiene que tener permisos de escritura. (por defecto /tmp).

3.3.1 Despliegue y arranque

El script pandora_db borra los datos de conexiones del NTA de histórico. El número de días que permanece esta información en el sistema se puede configurar en el apartado de Performance de la configuración de la consola.

3.4 Visualización

Por defecto (aunque este comportamiento se puede modificar en la configuracion de pandora_nta.conf) se creará un agente llamado Pandora NTA que contendrá las siguientes 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).

Nta main agent.png
Vista del nodo central NTA que resume todos los datos

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

Para cada IP gestionada, se monitorizarán 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.

Nta agent view.png
Vista de un agente NTA con sus modulos de datos

3.5 Informes

Se dispone 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

3.6 NTA explorer

Pandora dispone de una vista en la que se pueden visualizar datos de red provistos por el Pandora NTA a tiempo real. Es una vista mucho más flexible que los informes y útil para detectar los problemas de red con unos pocos clicks.

Nta explorer.png

En esta vista se muestran las IPs con más trafico de salida o de entrada. El top de IPs se puede establecer por número de paquetes o por número de bytes. Además, está la posibilidad de hacer filtros por una IP en concreto, para ver las IP's hacia las cuales hay tráfico desde ese origen.

Por ejemplo, si hay una IP que envía muchos datos y se quiere ver dónde los envía, basta con hacer click en el icono de filtro al lado de la IP y saldrá un listado y una gráfica con las direcciones que reciben datos de esa IP. De esta forma, detectar los pares más sobrecargados en una fecha dada es bastante sencillo.

3.7 NTA usage map

Esta vista permite mostrar el tráfico, en un intervalo de tiempo determinado, en forma de mapa topológico. Simplemente hay que seleccionar una fecha de inicio y una fecha de final, mostrandose las IPs con más tráfico de salida o de entrada.

Usage map.png


Volver a Indice de Documentacion Pandora FMS