Kaspersky Anti-Spam 2.0
Nachfolgendes Perl-Script wertet die /var/log/maillog aus und gibt eine Liste mit der Anzahl der Spam-Mails und deren Gesamtsumme zurück
#!/usr/bin/perl
# Kaspersky E-Mail gateway protection: maillog auswerten
$file=shift;
if (!$file) {
print "Wer kriegt die meisten Spam's?\n";
print "maillog als Parameter angeben!\n";
exit 1;
}
open (INPUT, $file) or die "$file not found.\n";
while (<INPUT>){
chop $_;
($x, $spam) = split(/ spam_status=yes /,$_);
($x, $spam) = split(/to=|\)/, $spam);
if ($spam) {
if ($spam =~ /;/) {
@spam=split(/;/,$spam);
foreach(@spam) {
push(@uniq, $_) unless $seen{$_}++;
$z++;
}
} else {
push(@uniq, $spam) unless $seen{$spam}++;
$z++;
}
}
}
close INPUT;
foreach $spam (sort {$seen{$b}<=>$seen{$a}} keys %seen) {
print $seen{$spam},"\t",$spam,"\n";
}
print "$z\tTOTAL\n";
exit 0;
Siehe auch
|