Nagios Network Analyzer es dashboard gráfico para el análisis de datos de nfdump, soportando netflow y sflow.
Básicamente le definimos fuentes de datos desde la interfaz web y se levantan procesos como estos :
nfcapd -I 1 -l /usr/local/nagiosna/var/Europa/flows -p 2058 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Europa/2058.pid -D -e -w -z nfcapd -I 2 -l /usr/local/nagiosna/var/Argentina/flows -p 2055 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Argentina/2055.pid -D -e -w -z nfcapd -I 3 -l /usr/local/nagiosna/var/Peru/flows -p 2056 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Peru/2056.pid -D -e -w -z nfcapd -I 4 -l /usr/local/nagiosna/var/Transportes/flows -p 2057 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Transportes/2057.pid -D -e -w -z nfcapd -I 6 -l /usr/local/nagiosna/var/Claro/flows -p 2059 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Claro/2059.pid -D -e -w -z sfcapd -I 7 -l /usr/local/nagiosna/var/Fortigate/flows -p 2060 -x /usr/local/nagiosna/bin/reap_files.py %d %f %i -P /usr/local/nagiosna/var/Fortigate/2060.pid -D -e -w -z
Dicha interfaz web ejecuta como proceso de fondo el comando nfdump y lo muestra en el navegador interpretando un JSON :
http://190.1.1.10/nagiosna/api/graphs/queryviz?sid=2&q[begindate]=-2%20hours&q[enddate]=-1%20second&q[aggregate_csv]=srcip,dstip,dstport&q[rawquery]=net%2010.0.0.0/8&agg1=dstip&agg2=srcip&sortby=bytes
nfdump -M '/usr/local/nagiosna/var/Argentina/flows/' -R . -t '2017/11/28.04:55:17-2017/11/28.10:55:16' -N -a -A 'srcip,dstip,dstport' -o 'fmt:{"protocol": "%pr", "start": "%ts", "end": "%te", "duration": "%td", "srcip": "%sa", "dstip": "%da", "srcport": "%sp", "dstport": "%dp", "srcas": "%sas", "dstas": "%das", "packets": %pkt, "bytes": %byt, "flows": %fl, "packets": %pkt, "tos": %tos, "bps": %bps, "pps": %pps, "Bpp": %bpp}' 'net 10.0.0.0/8'
Tabien le podemos agregar opciones extra al comando si lo ejecutamos desde la terminal, como :
-O bytes -o csv
Si las consultas personalizadas se vuelven muy lentas deberemos modificar estas variables de configuración.
/etc/php.ini
max_input_vars >= 50000 memory_limit >= 512M max_execution_time >= 120 max_input_time >= 120
/etc/httpd/conf/httpd.conf
LimitRequestLine 1000000