p0f für amavisd-new unter Gentoo (Teil 2)
So. Nach ein paar Tagen wollte ich dann auch mal den Erfolg von P0F überprüfen. Dazu habe ich logwatch benutzt. Mit folgendem Befehl bekommt man z.B. eine schöne Übersicht über amavisd-new:
emerge -u logwatch logwatch.pl --detail High --service amavis --range '-3 days'
Interessant ist in diesem Fall die Auflistung der Regeln, hier mal die P0F Regeln ausgeschnitten:
Rank Hits % Msgs % Spam % Ham Rule ---- ---- ------ ------ ----- ---- 7 508 88.81% 123.90% 8.64% L_P0F_OS_WINDOWS_OTHER 16 196 34.27% 47.80% 35.80% L_P0F_OS_UNKOWN 22 104 18.18% 25.37% 0.00% L_P0F_OS_WINDOWSXP 27 84 14.69% 20.49% 11.11% L_P0F_D_7_9 96 12 2.10% 2.93% 19.75% L_P0F_OS_LINUX 138 4 0.70% 0.98% 12.35% L_P0F_D_5_6
Nach diesen Zahlen habe ich die Regeln wie folgt angepasst:
header L_P0F_OS_WINDOWSXP X-Amavis-OS-Fingerprint =~ /^Windows XP/ score L_P0F_OS_WINDOWSXP 3.5 header L_P0F_OS_WINDOWS_OTHER X-Amavis-OS-Fingerprint =~ /^Windows(?! XP)/ score L_P0F_OS_WINDOWS_OTHER 2.5 header L_P0F_OS_UNKOWN X-Amavis-OS-Fingerprint =~ /^UNKNOWN/ score L_P0F_OS_UNKOWN 0.2 header L_P0F_OS_LINUX X-Amavis-OS-Fingerprint =~ /^Linux/ score L_P0F_OS_LINUX -0.5 header L_P0F_OS_UNIX X-Amavis-OS-Fingerprint =~ /^((Free|Open|Net)BSD)|Solaris|HP-UX|Tru64/ score L_P0F_OS_UNIX -1.0 header L_P0F_D_1_4 X-Amavis-OS-Fingerprint =~ /\bdistance [1-4](?![0-9])/ header L_P0F_D_5_7 X-Amavis-OS-Fingerprint =~ /\bdistance [5-7](?![0-9])/ header L_P0F_D_8_10 X-Amavis-OS-Fingerprint =~ /\bdistance (8|9|10)(?![0-9])/ header L_P0F_D_10_20 X-Amavis-OS-Fingerprint =~ /\bdistance (10|11|12|13|14|15|16|17|18|19|20)/ score L_P0F_D_1_4 -0.7 score L_P0F_D_5_7 -0.5 score L_P0F_D_8_10 0.3 score L_P0F_D_10_20 0.5
Ich habe die Scores angepasst und auch die Distance Intervalle. [5-6] und [7-9] war wohl nicht optimal gewählt. Eigentlich müsste man die Windowsversionen genauer unterscheiden. Leider ist das anhand des P0F outputs kaum möglich.
jetzt kommentieren? Fr, 05. Okt 2007 um 11:33 Uhr Christian