Adres nadawcy i odbiorcy jest ten sam

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)

 

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *