ntop mit vorhandenem MySQL als 3rd-party-app

Status
Für weitere Antworten geschlossen.

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
ntop (network top) ist ein Tool zur detailreichen Anzeige der Netzwerk-Nutzung Homepage. ntop beinhaltet eine eigene grafische Weboberfläche mit der fast Alles gesteuert, eingestellt und analysiert werden kann. Hier erkläre ich, wie man es mit minimalem Aufwand installiert und zum Laufen bringt.

Vorwort:
Da ntop lt. Abhängigkeitsregel MySQL und net-snmp mitinstalliert, habe ich den folgenden alternativen Weg gewählt, um das vorhandene MySQL zu benutzen. Von dem IPKG MySQL benötigen wir allerdings das Verzeichnis lib, da dort die benötigten Dateien für ntop liegen. Außerdem wird durch die komplette Installation des IPKG MySQL ein vorhandener Synology MySQL Prozess gekillt. Hinzu kommt, dass ntop bei Angabe des MySQL Hosts keine Portangabe zuläßt, weshalb man keinen eventuell vorhanden 2. MySQL Server ansteuern kann. SNMP ist ebenfalls schon auf der DS vorhanden und wird deshalb ebenfalls nicht benötigt.
Die folgenden Schritte unbedingt in der angegeben Reihenfolge durchführen und das Paket ntop wirklich erst am Schluss installieren, da ntop auf die MySQL-Library angewiesen ist.

Installation:
Auf der Shell als root einloggen und folgende Befehle ausführen:
Rich (BBCode):
ipkg update
ipkg install zlib gdbm libgd libxml2 pcre libpcap
ipkg install -force-overwrite rrdtool
ipkg install -nodeps ntop
Das -force-overwrite habe ich deshalb gewählt, da bei mir spamassassin das Paket perllocal.pod schon installiert hatte und die Installation von rrdtool sonst mit folgender Fehlermeldung abbricht:
Collected errors:
Package rrdtool wants to install file /opt/lib/perl5/5.8.8/ppc-linux/perllocal.pod
But that file is already provided by package spamassassin​
Wer keine Speicherung der Daten in der MySQL wünscht, kann die Konfiguration der MySQL-DB weglassen, die Library wird von ntop aber trotzdem erwartet. Ohne MySQL wird bei jedem Beenden von ntop oder Neustarten eurer DS die Historie gelöscht.

Wir besorgen uns nun die benötigte MySQL-Dateien, verschieben diese nach /opt/lib/mysql und entfernen dann die nicht benötigten Dateien am Ende:
Rich (BBCode):
ipkg download mysql
tar -xvzf mysql_4* ./data.tar.gz
tar -xvzf data.tar.gz ./opt/lib
mkdir -p /opt/lib/mysql
mv -f ./opt/lib/mysql/* /opt/lib/mysql/
rm -fr ./opt data.tar.gz mysql_4*
Nun müssen wir die MySQL-DB anlegen und die Tabellen erzeugen. Wir erstellen eine neue Datenbank ntop und importieren den SQL-Dump ntop.sql.txt aus dem Anhang mit phpMyAdmin.
Nun kommen wir endlich zur eigentlichen Installation vom Tool ntop. Da die benötigten Pakete schon manuell von uns installiert wurden, muss das Paket ntop keine Abhängigkeiten überprüfen, weshalb wir als Option -nodeps angeben.
Rich (BBCode):
ipkg install -nodeps ntop
Start:
Wir starten nun das erste Mal ntop direkt mit
Rich (BBCode):
ntop
Nach ein paar Zeilen werden wir aufgefordert das gewünschte Passwort für den Benutzer admin einzugeben. Anschließend lassen wir den Bildschirm weiter an uns vorbeirauschen. Wir öffnen den Browser und geben in der Adresszeile folgendes ein:
Rich (BBCode):
http://<adresse-eurer-diskstation:3000
Nun sollte sich die Weboberfläche von ntop präsentieren. Wir rufen das Menü Admin - Configure - Startup Options und dann den Tab ganz rechts DB Prefs auf. Aktivieren Save Data into DB mit yes und geben im Feld DB Configuration die entsprechenden Daten für den Zugang zu MySQL ein. Das Format ist unterhalb erklärt und dürfte keine Probleme bereiten. Speichert die Einstellung mit dem Button Save Prefs. Nach dem Speichern erscheint ein weiteres Feld Save Sessions into DB unterhalb Save Data into DB. Dieses ebenfalls mit yes aktivieren und erneut speichern. Jetzt wechseln wir zum Tab Basic Prefs und kontrollieren das Feld Capture Interfaces (-i). Dort sollte mindestens eth0 aktiviert sein. Dann noch Feld Enable Session Handling (-z) und Enable Protocol Decoders (-b) mit yes aktivieren. Weiter unten aktivieren wir noch das Feld Run as daemon (-d) mit yes. Nun wieder speichern. Wir beenden ntop im Menü Admin - Shutdown und warten einige Sekunden bis der Service vollständig gestoppt wurde. Überpüfen kann man das auf der Shell mit
Rich (BBCode):
ps | grep ntop | grep -v grep
Wenn kein laufender Prozess angezeigt wird können wir ntop mit dem eigentlichem Startscript starten.
Rich (BBCode):
/opt/etc/init.d/S01ntop
ntop sollte 2 Zeilen anzeigen und dann in den Hintergrund verschwinden. Zur Kontrolle, ob die MySQL-DB richtig befüllt wird, rufen wir phpMyAdmin und dann die DB ntop auf. In der Tabelle sessions sollten sich schon einige Datensätze befinden. Wieviel Tage in der DB bis zum Überschreiben gehalten werden, kann man im Menü Admin - Configure - Startup Options im Tab DB Prefs im Feld DB Max record lifetime einstellen.

Wer keine Speicherung der Daten in der MySQL wünscht, kann die Konfiguration der MySQL-DB weglassen, die Library wird von ntop aber trotzdem erwartet. Es wird allerdings bei jedem Beenden von ntop oder Neustarten eurer DS die Historie gelöscht.

Integration im DSM:
ntop besitzt einen eigenen Webserver, der standardmäßig auf Port 3000 arbeitet. Zur Integration in den DSM befindet sich im Anhang ein kleines SPK ntop_dsm.spk. Das SPK legt nur den Eintrag für die 3rd-Party Applications und dem Desktop an. Ich habe bewußt auf eine vollständige Installation durch das SPK verzichtet, da sich eine vollständig automatische Installation in Einzelfällen als nicht trivial herausgestellt hat.
Das wars erstmal mit der Installation und Grundkonfiguration von mir. Für mehr Informationen kann man die Homepage besuchen oder sich per Suchmaschine schlau machen.

Wie immer ist Alles auf eigene Verantwortung. Bei Problemen wird hier bestimmt der Eine oder Andere weiter helfen.

P.S. Der Screenshot ist nur ein Ausschnitt der vielen Ansichten. In der Detailansicht (auf Lupe klicken) kann man sich sogar einen bestimmten Ausschnitt detailierter anzeigen lassen.
 

Anhänge

  • ntop.sql.txt
    2,7 KB · Aufrufe: 31
  • ntop_dsm.spk
    22,5 KB · Aufrufe: 26
  • ntop_sample.png
    ntop_sample.png
    42,1 KB · Aufrufe: 174
Zuletzt bearbeitet:

ag_bg

Benutzer
Mitglied seit
19. Jan 2008
Beiträge
1.736
Punkte für Reaktionen
0
Punkte
0
Mensch QTip,

der Beitrag ist mir ja jetzt erst aufgefallen. Da weiß ich ja schon einmal, was ich heute abend probieren kann:D

Danke.

Best regards
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Juhui ein Spielzeug für heute abend. Spitzen Idee QTip :)
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
na endlich, dachte schon das der Beitrag zu offtopic wäre. Viel Spass beim Spielen ;)
 

ag_bg

Benutzer
Mitglied seit
19. Jan 2008
Beiträge
1.736
Punkte für Reaktionen
0
Punkte
0
na endlich, dachte schon das der Beitrag zu offtopic wäre. Viel Spass beim Spielen ;)

Irgendwie ist der bei mir nicht in den eneu Beiträge-Filter mit reingefallen, weshalb ich ihn an sich auch nicht gesehen hatte. Aber zum Glück war er noch bei den ungelesenen mit drin.

best regards
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat