Einfache Kommunikationsmatrix aus Fortigate Logs
Oft ist es nützlich, die Firewall Verbdingungen aus Logfiles genauer zu analysieren. Zu diesem Zweck habe ich ein kleines Python Skript geschrieben. Dieses Parst ein Logfile und gibt eine übersichtliche Kommunikationsmatrix aus. Das Skript ist auf GitHub gehostet: https://github.com/oelu/fg_log_parser
Die Bedienung ist simpel:
$ ./fg_log_parser.py --help
Fortigate Log Parser
Usage: fg_log_parser.py
fg_log_parser.py (-f <logfile> | --file <logfile>)
Options:
-h --help Show this message.
--version shows version information
Das Skript listet die Verbindungen jeweils nach Source IP Adresse auf. Auf der zweiten Zeile ist die entstprechende Destination IP Adresse aufgeführt. Es folgt der Port und das Protokoll. Zu jeder Verbindung gibt das Skript zusätzlich den count und sowie die empfangenen und gesendeten Bytes an.
Output:
$ ./fg_log_parser.py -f fg.log
172.17.5.166
XX.XX.XX.XX
443
TCP
count
1
rcvdbytes
29710
sentbytes
3174
8.8.8.8
53
UDP
count
10
rcvdbytes
2001
sentbytes
692