Walka ze spamem cz.4 – Postfix SpamAssassin

SpamAssasin to ostatnia broń w naszym arsenale przygotowanym na wszelki spam jaki może się pojawić na naszym serwerze poczty.

 

Zainstalujmy więc wymagane paczki:

apt-get install spamassassin spamc

Dodajmy użytkownika, który będzie uruchamiał spammassassin-a

groupadd spamd
useradd -g spamd -s /bin/false spamd
chown spamd:spamd -R /etc/spamassassin/

Użytkownika już mamy, teraz czas skonfigurować SA:

#vim /etc/default/spamassassin

# If you're using systemd (default for jessie), the ENABLED setting is
# not used. Instead, enable spamd by issuing:
# systemctl enable spamassassin.service
# Change to "1" to enable spamd on systems using sysvinit:
ENABLED=1
SPAMD_HOME="/home/spamd/"
OPTIONS="--create-prefs --max-children 5 --username spamd --helper-home-dir /home/spamd/ -s /home/spamd/spamd.log"
PIDFILE="/home/spamd/spamd.pid"
CRON=1

Uruchommy SA:

service spamassassin start

Dodajmy SpamAssassin-a do postfixa:

#vim /etc/postfix/master.cf

#na dole pliku dodajmy:
spamassassin unix -     n       n       -       -       pipe
        user=spamd argv=/usr/bin/spamc -f -e  
        /usr/sbin/sendmail -oi -f ${sender} ${recipient}

#w każdym protokole, z którego korzystamy (np. smtps, submission) dodajmy opcję kierowania poczty do spamassassina:
-o content_filter=spamassassin

Zrestartujmy postfix-a:

service postfix restart

Musimy jeszcze utworzyć reguły filtrowania:

#/etc/spamassassin/local.cf

rewrite_header Subject ***** SPAM _SCORE_ *****
report_safe             0
required_score          5.0
use_bayes               1
use_bayes_rules         1
bayes_auto_learn        1
skip_rbl_checks         0
use_razor2              0
use_dcc                 0
use_pyzor               0

#Adjust scores for SPF FAIL
score SPF_FAIL 4.0
score SPF_HELO_FAIL 4.0
score SPF_HELO_SOFTFAIL 3.0
score SPF_SOFTFAIL 3.0

#adjust DKIM scores
score DKIM_ADSP_ALL 3.0
score DKIM_ADSP_DISCARD  10.0
score DKIM_ADSP_NXDOMAIN 3.0

Restart SA dla pewności, że korzysta z naszych nowych reguł:

service spamassassin restart

Aby przetestować SpamAssassin-a można z obcego serwera wysłać maila na swoją skrzynkę w postfix-ie i przeglądnąć nagłówek wiadomości.

 

Aktualizacja 11/05/2016:

Zauważyłem, że spamassassin informuje o błędzie

warn: config: failed to parse line, skipping, in "/etc/spamassassin/local.cf": use_dcc 0

Można to łatwo naprawić komentując use_dcc lub instalując paczkę z dcc i nie używać tego modułu (bezcelowe).

spamassassin --lint

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.1 – Postfix SPF

Walka ze spamem cz.2 – Postfix DKIM

Walka ze spamem cz.3 – Postfix DMARC

Walka ze spamem cz.5 – Dovecot Sieve

Dodaj komentarz

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

*