BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

ipfw Logdatei auswerten

In einer ipfw Regel kann zusätzlich ein log-Schlüsselwort angegeben werden:

/sbin/ipfw -q add deny log ip from any to any

Nun werden alle Pakete, auf die diese Regel zutrifft, von syslog protokolliert. In /etc/syslog.conf findet man heraus, in welche Logdatei diese Meldungen geschrieben werden:

security.*                   /var/log/security

Mit Hilfe von ipfwcount kann nun diese Datei ausgewertet werden. ipfwcount findet man im FreeBSD Portbaum unter security/ipfwcount:

# cd /usr/ports/security/ipfwcount && make install clean

Möchte man nun herausfinden, welchen Destination-Port die meisten geblockten Pakete haben, kann man folgenden Befehl verwenden:

# ipfwcount -dink dport -t 5 /var/log/security
Destination port (denied, incoming, 5 of 21)
------------------------------------------------
http 124
netbios-ssn 47
1026 44
microsoft-ds 26
loc-srv 22

Mit der -d Option werden geloggte Pakete einer deny Regel und mit -i werden eingehende Pakete gezählt. Mit -n werden die Portnummern durch den Portnamen ersetzt und mit -k dport wird angegeben, dass nach den Destination-Ports sortiert werden soll und durch -t 5 werden nur die Top 5 Ports angezeigt.

Soll nun gleichzeitig angezeigt werden, welche Rechner am meisten auf diese Ports zugegriffen haben, so kann folgender Befehl verwendet werden:

# ipfwcount -dink dport,shost -t 2 /var/log/security
Destination port (denied, incoming, 2 of 21)
------------------------------------------------
http 124
Source host (2 of 11)
------------------------------------------------
xyz.dclient.hispeedy.hc 71
xyz.dsl.cest1wll.ten 21

netbios-ssn 47
Source host (2 of 8)
------------------------------------------------
217.150.xyz.xyz 18
xyz.aci.mehs.da.pj 8

Nun sieht man für die zwei meist geblockten Destination-Ports je die beiden Rechner, die am meisten versucht haben auf diese Ports zuzugreifen.

Möchte man automatisch mit den periodic daily Mails eine Auswertung der ipfw Logdatei erhalten, so kann man einen Symlink in /usr/local/etc/portiodic/security erstellen:

# cd /usr/local/etc/periodic/security/ && ln -s /usr/local/share/examples/ipfwcount/100.ipfwcount

Danach muss ipfwcount in der /etc/periodic.conf aktiviert werden:

echo 'daily_status_security_ipfwcount_enable="YES"' >> /etc/periodic.conf

Mehr Informationen zu ipfwcount findet man in der Manpage ipfwcount(1).

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink