Es wird keine Filterung durchgeführt, aber in diesem Beispiel wird ein praktischer kontinuierlicher Paket-Sniffer erstellt:
tcpdump -n -C 128 -W 100 -z /home/user/compress_logs.pl -i br0 -w /home/user/packetlogs/packetlog.pcap &
-n
IP-Adressen nicht umkehren, Portnummern nicht in Textbeschreibungen konvertieren, MAC-Adressen nicht in Namen usw. konvertieren.-C 128
Drehen Sie die Erfassungsdateien alle 128.000.000 Bytes-W 100
Begrenzen Sie die Anzahl der rotierten Capture-Dateien (siehe-C
) auf 100-z /home/user/compress_logs.pl
Skriptcompress_logs.pl
für jede gedrehte Capture-Datei ausführen-i br0
auf Schnittstelle erfassenbr0
-w /home/user/packetlogs/packetlog.pcap
Dateiname verwenden/home/user/packetlogs/packetlog.pcap
&
dies wird von bash analysiert; gibt an, dass der Befehl im Hintergrund (asynchron) ausgeführt werden soll
Setzen Sie es in /etc/rc.local, um es beim Booten auszuführen. Es erfasst alle Pakete auf der Schnittstelle br0
, bei der es sich um zwei Schnittstellen handeln kann, die als Tap oder zwei mit einem passiven Tap verbundene Schnittstellen oder eine Schnittstelle mit einem gespiegelten Switch-Port verbunden sind (in der Praxis habe ich alle drei verwendet).
Es schreibt ~ 128 MB-Dateien und dreht bis zu 100 davon automatisch. Wenn 128 MB Daten erfasst werden, wird die Datei geschlossen, eine neue geöffnet und der angegebene Befehl mit dem alten Dateinamen als Argument verknüpft - in diesem Fall ein kleines Perl-Skript, das die vorherige Erfassungsdatei komprimiert, um die IDS schneller zu übertragen Server.
Ich verwende dies, wenn ich eine Verbindung längere Zeit überwachen muss (wie ein oder zwei Tage) und zurückgehen muss, um ein Ereignis zu finden, das zu einer bestimmten Zeit aufgetreten ist. Die kleinen Dateien sind in Wireshark viel einfacher zu handhaben als eine große pcap-Datei.