Czasem adres nadawcy i odbiorcy jest ten sam. I to nie nasz:) Wtedy z dość dużą szansą mozna stwierdzić ze to spam. Ale jak zrobić i jak sprawdzić dwa pola czy są takie same. Można sprawdzić jedną regułą i można pluginem. Na tej stronie nie używany był plugin jeszcze więc zrobimy to tym sposobem.
Podczas ptrzetwarzania maili Spamassassin może korzystac reguł a bardziej skomplikowane rzeczy uruchamiane sa w pluginach. Plugin to nic innego jak program w Perlu który uruchamia SA. Plik wgrywamy do katalogu /etc/spamassassin jako FromTheSameTo.pm
Zawartość pliku:
package Mail::SpamAssassin::Plugin::FromTheSameTo;
#1;
use strict;
use Mail::SpamAssassin;
use Mail::SpamAssassin::Plugin;
our @ISA = qw(Mail::SpamAssassin::Plugin);
sub new {
my ($class, $mailsa) = @_;
$class = ref($class) || $class;
my $self = $class->SUPER::new( $mailsa );
bless ($self, $class);
$self->register_eval_rule ( 'check_for_from_same_to' );
return $self;
}
# Often spam uses different From: and Reply-To:
# while most legitimate e-mails does not.
sub check_for_from_same_to {
my ($self, $msg) = @_;
my $from = $msg->get( 'From:addr' );
my $To = $msg->get( 'To:addr' );
#Mail::SpamAssassin::Plugin::dbg( "FromNotReplyTo: Comparing '$from'/'$replyTo" );
if ( $from ne '' && $To ne '' && $from eq $To ) {
return 1;
}
return 0;
}
Mamy już plugin trzeba nauczyć korzystać z niego SA.
W pliku /etc/spamassassin/local.cf dodajemy linijkę
loadplugin Mail::SpamAssassin::Plugin::FromTheSameTo /etc/spamassassin/FromTheSameTo.pm
i jeszcze punktację w pliku z regułami (może byc ten co powyżej)
header __ZABOJCASPAMU_FROM_TO eval:check_for_from_same_to() meta ZABOJCASPAMU_FROM_SAME_TO __ZABOJCASPAMU_FROM_TO #&& !__LOCAL_DO_MYDOMAIN describe ZABOJCASPAMU_FROM_SAME_TO From: and To: the same score ZABOJCASPAMU_FROM_SAME_TO 2
I teraz uwaga.Zakomentowana jest część która sprawdza czy to nie jest nasza własna domena(inaczej punktowane będą maile wysyłane do siebie samego przez naszych uzytkowników). CHyba, że w amavisie ustawimy aby nie sprawdzać wysyłanych maili przez nas serwer (kłaniają się policy). Albo można przyjąć ze 2 pkt dostana maile do samego siebie:). Można whitelistować włsną domenę (chociać może to miec inne skutki)