Catégories
Open-source Reseau

Installation de NFSen, un front-end pour NFDump

Dans un précédant article, nous avions abordé l’analyse des flux réseau via le protocole NetFlow. Des outils en ligne de commande avaient été présentés pour afficher des rapports sur les informations remonté par les sondes.

Il existe également une interface Web nommée NFSen dont nous allons parler aujourd’hui.

Catégories
Open-source Reseau

Ntop et la supervision réseau via Netflow/IPFix

NTop est un outil libre (licence GPL) de supervision réseau permettant d’afficher en temps réel les informations collectées dans une interface Web. Pour effectuer cette collecte, NTop se base sur la librairie libpcap (du projet TCPDump) pour capturer les flux transitant sur les interfaces réseau de la machine ou est installé le logiciel. Les dernières versions de NTop permettent également de collecter des informations venant de machines distantes grâce aux protocoles SNMP et Netflow/IPfix. C’est sur ce dernier point que nous allons nous focaliser dans ce billet.

Catégories
Open-source Reseau

Installation d’une sonde NetFlow sous FreeBSD

Nous allons dans ce billet voir comment installer une sonde Netflow (protocole propriétaire de Cisco) sur une machine FreeBSD. On pourra ensuite collecter les mesures des flux réseaux transitant par notre machine BSD et les remonter à un collecteur avant analyse. Pour en savoir plus sur le protocole Netflow, je vous conseille la lecture de ce billet.

Nous allons utiliser la sonde libre fProbe qui a le bon goût d’être disponible dans les dépôts de FreeBSD.

Installation de fProbe

On installe le logiciel fProbe (version 1.1 au moment de l’écriture de ce billet):

[shell]
pkg_add -r fprobe
[/shell]

Utilisation de fProbe

Imaginons que votre routeur sous FreeBSD est 2 interfaces réseaux (ce qui est un minimum pour un routeur…): em0 et em1. em0 est votre interface coté LAN et em1 celle coté WAN. Pour capturer les flux transitant sur l’interface WEN et remonté via le protocole NetFlow (sur le port UDP/9991) les mesures vers une machine collecteur ayant pour adresse IP 192.168.0.100, il faut saisir la ligne de commande suivante:

[shell]
fprobe -i em1 -f ip 192.168.0.100:9991
[/shell]

Il est ensuite facile de récupérer les mesures sur la machine 192.168.0.100 en installant NFDump ou en utilisant NTop et son plugin NetFlow.

Vous pouvez bien évidemment lancer autant de sonde fprobe que nécessaire (par exemple si votre routeur dispose de plusieurs interfaces à surveiller).

Il est également possible d’envoyer les mesures Netflow à plusieurs collecteurs. Pour celà il faut ajouter les couples adresse IP/port UDP à la ligne de commande. Dans ce cas, il faut modifier le script de démarrage de la manière suivante:

[shell]
vi /usr/local/etc/rc.d/fprobe

#!/bin/sh

#

# $FreeBSD: ports/net-mgmt/fprobe/files/fprobe.sh.in,v 1.1 2006/11/24 07:23:24 clsung Exp $

#

# PROVIDE: fprobe

# REQUIRE: NETWORKING

# KEYWORD: shutdown

# Add the following lines to /etc/rc.conf to enable fprobe:

#

#fprobe_enable="YES"

#

# See fprobe(8) for fprobe_flags

#

. "/etc/rc.subr"

name="fprobe"

rcvar=`set_rcvar`

command="/usr/local/sbin/fprobe"

command_args1="-i em0 -f ip 192.168.0.100:9990"

command_args1="-i em4 -f ip 192.168.0.100:9994"

pidfile="/var/run/$name.pid"

load_rc_config "$name"

: ${fprobe_enable="NO"}

start_cmd="echo \"Starting ${name}."\; ${command} ${command_args1}; ${command} ${command_args2}"

run_rc_command "$1"

[/shell]

Quand vous avez validé votre chaine de mesure (sonde / collecteur), vous pouvez automatiser le lancement de la sonde en modifiant le fichier /usr/local/etc/rc.d/fprobe pour l’adapter à vos besoins et ajouter la ligne suivante au fichier /etc/rc.conf:

[shell]

fprobe_enable="YES"

[/shell]

Catégories
Open-source Reseau

Analyse des flux Netflow sous GNU/Linux

Netflow est un protocole réseau créé par Cisco pour collecter des informations sur les flux IP. Nous allons dans ce billet voir comment configurer un routeur pour activer la sonde Netflow puis récupérer et analyser le résultat sur une machine GNU/Linux (Ubuntu 9.10, mais les outils sont disponibles sur l’ensemble des distributions).