Dieses Dokument zeigt wie man den TCP Traffic nach Ports aufteilt und daraus eine Grafik generiert.
Folgende Programme werden dazu benötigt: iptraf und
rrdtool
Installation von iptraf
Die ausführbaren Dateien sollten anschliessend in /usr/local/bin liegen!
IPtraf starten und den Intervall konfigurieren.
Das logging in /var/log/iptraf/ mit folgednem Befehl starten
Das RoundRobinDatabaseTool (RRDTool) installieren
Die RoundRobinDatabase vorbereiten
Alle werte werden in einem speziellen Unix Format gespeichert. (Sekunden set 1. Jan. 1970 UTC)
Iptraf im hintergrund starten
Am besten gerade ein Script in /etc/init.d/ anlegen und unter /etc/rc.d/rc3.d verlinken, damit beim Systemstart das logging gleich beginnt
Mit einem einfachen Perl Script kann man die Daten aus dem Iptraf Logfile (/var/log/iptraf/tcp_udp_services-eth1.log) auslesen und in die RoundRobinDatabase (RRD) abspeichern.
Am besten richtet man dafür gleich einen Cronjob ein.
Mit untenstehendem Befehl wird die DB abgefragt und die Werte werden and der Konsole ausgegeben.
# Dezember 2002 Andres Bohren
rrdtool fetch /var/log/rrd/tcp_services.rrd AVERAGE --start -86400
# Dezember 2002 Andres Bohren
# http://home.icewolf.ch/linux
# Erzeugt eine Grafik mittels RRDTool aus einer RoundRobinDatabase
#
CDATE=`date +%Y%m%d%H%M`
# FTP
echo 'FTP: '
rrdtool graph /web/rrd/ftp.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:20_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:20_out:AVERAGE AREA:in#0000ff:"FTP in" LINE1:out#00ff00:"FTP out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# SSH
echo 'SSH: '
rrdtool graph /web/rrd/ssh.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:22_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:22_out:AVERAGE AREA:in#0000ff:"SSH in" LINE1:out#00ff00:"SSH out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# SMTP
echo 'SMTP: '
rrdtool graph /web/rrd/smtp.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:25_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:25_out:AVERAGE AREA:in#0000ff:"SMTP in" LINE1:out#00ff00:"SMTP out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# DNS
echo 'DNS: '
rrdtool graph /web/rrd/dns.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:53_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:53_out:AVERAGE AREA:in#0000ff:"DNS in" LINE1:out#00ff00:"DNS out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# HTTP
echo 'HTTP: '
rrdtool graph /web/rrd/http.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:80_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:80_out:AVERAGE AREA:in#0000ff:"HTTP in" LINE1:out#00ff00:"HTTP out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# POP
echo 'POP: '
rrdtool graph /web/rrd/pop.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:110_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:110_out:AVERAGE AREA:in#0000ff:"POP in" LINE1:out#00ff00:"POP out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
#
# NEWS
echo 'NEWS: '
rrdtool graph /web/rrd/news.png --imgformat=PNG --start -86400 DEF:in=/var/log/rrd/tcp_services.rrd:119_in:AVERAGE DEF:out=/var/log/rrd/tcp_services.rrd:119_out:AVERAGE AREA:in#0000ff:"NEWS in" LINE1:out#00ff00:"NEWS out" -v 'Bytes per second' COMMENT:'Created at '$CDATE
Lokales RRDTutorial
Dokumentation zum Aufsetzen http://www.taedium.net/rrd-iptraf/
RDDTool http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/
iptraf Homepage http://iptraf.seul.org/
iptraf Freshmeat http://freshmeat.net/projects/iptraf/?topic_id=152
Zur Linux Startseite home.icewolf.ch/linux/ | Copyright © 2002 - Andres Bohren Icewolf Software