Filtrování SPAMu: Spamassassin pro Postfix na Linux Debian 8

Jak zatočit se SPAMem, pokud provozujete VPS na Linuxu? Dnes si ukážeme instalaci Spamassassinu a jeho nastavení pro potlačení SPAMu v příchozích e-mailech.

Nejdříve si nainstalujeme samotné rozšíření.

apt-get install spamassassin spamc

Vytvoříme uživatele a skupinu spamd, logovací adresář a nastavíme oprávnění / vlastnictví.

groupadd spamd
useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd
mkdir /var/log/spamassassin
chown spamd:spamd /var/log/spamassassin

Provedeme úpravu konfigurace v souboru /etc/default/spamassassin

ENABLED=1
OPTIONS="--create-prefs --max-children 5 --helper-home-dir --username spamd -H /var/log/spamassassin/ -s /var/log/spamassassin/spamd.log"
CRON=1

a současně nakofigurujeme  /etc/spamassassin/local.cf​

rewrite_header Subject [***** SPAM _SCORE_ *****]
report_safe 1
​​required_score 4.0

Poté nastartujeme službu:

service spamassassin start

a ověříme, zda běží bez problémů.

service spamassassin status

Výsledek by měl být tento:

Velmi podstatný je řádek, který zobrazuje

Loaded: loaded (/lib/systemd/system/spamassassin.service; enabled)

Služba musí být ve stavu enabled, nikoli disabled. Pokud by přece jen status zahlásil toto:

Loaded: loaded (/lib/systemd/system/spamassassin.service; disabled)

Je nutné spustit Spamassassin následujícím způsobem:

systemctl enable spamassassin.service

Služba se spustí na pozadí a můžeme její průběh ověřit pomocí

netstat -nlp4 | grep spam

Jak nakonfigurovat Postfix, aby používal Spamassassin jak filtr pro emailové zprávy

Upravíme soubor /etc/postfix/master.cf

​smtp      inet  n       -       -       -       -       smtpd​
  -o content_filter=spamassassin

a na konec souboru ještě následující direktivu:

spamassassin unix -     n       n       -       -       pipe
  user=spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

Poté můžeme celý Postfix restartovat:

service postfix restart


Další zdroje: