Mit NTOPNG zur Netzwerkauswertung

Netzwerkauswertungen sind ein heikles Thema. Es geht hier darum, bestimmten Traffic zu analysieren, der eigentlich nicht gewollt ist. Als Beispiel dient, warum die Internetbandbreite ausgelastet ist und keiner mehr richtig arbeiten kann. Oder um zu prüfen, von welchem PC gerade sehr viel hochgeladen wird.

Abhilfe kann hier das Tool NTOP schaffen, welches sich in das Netzwerk einklinkt und den Datenverkehr mit schneidet.

NTOPNG ist ein OpenSource Tool, welches allerdings kostenpflichtig vertrieben wird. Sie erhalten das Tool unter https://www.ntop.org/products/traffic-analysis/ntop/

Es gibt hiervon 4 verschiedene Versionen mit unterschiedlichem Funktionsumfang.

  • Community: kostenfrei, geringster Funktionsumfang
  • Pro: erweiterte Funktionalität, z.B. Echtzeitauswertung der Geräte mit dem meisten Traffic
  • Enterprise M: erweiterte Funktionalität zu Pro, z.B. SNMP, Auswertung der Vergangenheit, Visualisierungen, etc.
  • Enterprise L: zusätzlich Identity Management zu Enterprise M

Alle Versionen ab Pro sind kostenpflichtig.

Hier widmen wir uns allerdings der Community-Edition, welche kostenlos unter Ubuntu installiert werden kann.

Hier können Sie direkt zu den Unterpunkten springen:

Vorbereitung

Zuerst wird ein Ubuntu-System benötigt, welches entweder nativ installiert wird oder als VM.

In beiden Fällen muss die Netzwerkkarte im Promiscuous-Mode (Wiki) laufen, damit der Datenverkehr der anderen Geräte mitgeschnitten werden kann. Anderenfalls wird nur der Datenverkehr ausgewertet, der auf dem Server mit installierten NTOPNG ankommt oder diesen verlässt.

native Maschine

Auf einer nativen Maschine kann der Promiscuous-Mode zur Laufzeit eingestellt werden, verschwindet aber nach einem Neustart, oder persistent durch Anpassung der Netzwerkkonfiguration

Hierzu muss das Paket ifupdown installiert werden, da die Netzwerkverwaltung mit netplan diesen Modus nicht unterstützt.

Hier muss netplan deaktiviert werden.

vi /etc/default/grub

# am Ende hinizufügen:
GRUB_CMDLINE_LINUX="netcfg/do_not_use_netplan=true"

Im Anschluss muss der GRUB Bootmanager aktualisiert werden.

sudo update-grub

Im nächsten Schritt muss die alte Netzwerkverwaltung installiert werden.

sudo apt-get install ifupdown

Vor dem nächsten Neustart muss das Netzwerk noch in der Datei /etc/network/interfaces konfiguriert werden.

Laufzeit-Konfiguration

Zur Laufzeit kann der Promiscuous-Mode einfach mit folgendem Befehl auf einer Schnittstelle aktiviert werden.

ifconfig [Schnittstelle] promisc

Wenn in der Ausgabe von ifconfig der Begriff PROMISC zu lesen ist, war die Anpassung erfolgreich.

Deaktivieren kann man den Modus wieder mit folgendem Befehl.

ifconfig [Schnittstelle] -promisc

Persistente Konfiguration

Um den Promisc Mode dauerhaft zu konfigurieren, müssen in der Netzwerkkonfiguration an das Ende der Konfiguration folgende Zeile hinzugefügt werden.

up /sbin/ifconfig [Schnittstelle] promisc on

Virtuelle Maschine (VMware)

Wird das NTOPNG in einer VM unter VMware bereitgestellt, so ist die Einrichtung etwas einfacher. Hier muss lediglich in der virtuellen Switch der Promiscuous-Mode auf akzeptieren gestellt werden, fertig.

NTOPNG installieren

Nach den Vorbereitungen kann nun NTOPNG installiert werden. Dies kann einfach über die Paketverwaltung von Ubuntu passieren.

wget http://apt.ntop.org/18.04/all/apt-ntop.deb
sudo dpkg -i apt-ntop.deb

Hierdurch werden alle Anpassungen im System automatisch vorgenommen. Im Anschluss wird NTOPNG installiert.

sudo apt-get update -y
sudo apt-get install pfring-dkms nprobe ntopng n2disk cento -y

Nun sind noch einige Anpassungen in der Konfiguration nötig. Hierzu wird die Konfigurationsdatei geöffnet und bearbeitet.

sudo vi /etc/ntopng/ntopng.conf

# folgende Konfigurationschalter aktivieren
-G=/var/run/ntopng.pid

-i=[Schnittstelle]
-w=3000
-m=[Subnetz CIDR]

Speichern Sie die Datei und erstellen Sie eine Startdatei mit entsprechenden Inhalten.

sudo vi /etc/ntopng/ntopng.start

# folgende Zeile eintragen
--community

Nun muss NTOPNG noch so eingestellt werden, dass es beim Neustart automatisch mitstartet.

sudo systemctl start ntopng
sudo systemctl enable ntopng

NTOPNG Oberfläche & Auswertung

Sie haben nun NTOPNG fertig installiert und können dies nun über einen Browser aufrufen mit folgender URL.

http://[IP-Adresse]:3000

Den ersten Login führen Sie mit „admin / admin“ durch und werden dann dazu aufgefordert, das Kennwort zu ändern.

Ist das erledigt, erhalten Sie ein Dashboard. Für die ersten 10 Minuten erhalten Sie das Dashboard der Enterprise-Version. Im Anschluss fällt das Dashboard zurück auf die Community-Version und sieht wie folgt aus.

Hier gibt es nun verschiedene Möglichkeiten der Auswertung. Die interessantesten befinden sich allerdings links unter Hosts -> Hosts. Hier werden im Standard alle Hosts angezeigt.

Diese können rechts oben unter Filter Hosts noch angepasst werden, um so z.B. nur die Remote-Hosts anzeigen zu lassen.


Gerne übernehmen wir für Sie die Netzwerküberwachung, sollten Sie akute Probleme im Netzwerk haben. Sprechen Sie uns einfach an. Hier geht’s zu den Kontaktdaten.

Sascha Jelinek