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