Spamszűrés Postfix-szal Solarison

Miután meguntam, hogy egy “politikai” párt listájára felkerültem, beizzítottam a Solarison a spamszűrést. Nekem a postfix kezeli a leveleimet, ami a legjobb, az IBM által szponzorált SMTP szerver a piacon (véleményünk szerint), ráadásul könnyen konfigurálható.

Az SMTP szerverre pedig azért van szükség, mert a fetchmail (ami leszedi a leveleket) nem a mailboxba pakol közvetlenül, hanem a localhost-os smtp-nek dobja át, ami nálam a postfix.

A leveleket domain vagy teljes emailcím alapján lehet kezelni. A beállításokat a /etc/postfix/access alatt kell elvégezni.

Whitelist (engedélyezett levelek listája):

[email protected] OK
grandpa_george@some_domain.org OK

Ezt a beállítást nem használom (nem itt), minden levelet szívesen látok. Kivéve… amiket nem szeretünk, azokat az alábbi beállítások valamelyikével lehet kiszűrni:

# REJECT drops the message with a default error message.
#
hostile_domain.com REJECT

# Any 5xx code means a fatal error, and the mail client should not try again.
# Here we’ll make a specific rejection message to send as part of the
# bounce message, rather than the default REJECT version.
#
ex-girlfriend@some_host.net 554 Get a life and move on.

# Code 4xx means that the client should retry later, it’s a non-fatal error.
#
[email protected] 450 Sorry, we’re performing an upgrade of our mailinglist software, be back on Thursday.

Ahhoz, hogy mindez működjön, be kell állítani a /etc/postfix/main.cf-ben, hogy

smtpd_sender_restrictions = 
     check_sender_access dbm:/etc/postfix/access

utana pedig máris kiadhatjuk a

postmap /etc/postfix/access

parancsot.

A beállítások eddig a pontig linuxon és Solarison is ugyanazok. A következő lépésként újra kell indítani a postfix szolgáltatást, amit Solarison a

svcadm restart postfix

paranccsal tehetünk meg, linuxon pedig a

/etc/init.d/postfix restart

parancsot kell ehhez kiadni.

A masszív, aggresszív spammereket kézzel viszem fel.

A “maradék” szűrésére a spamassassint használom, abban van whitelist, spamlist, illetve bevezettem a “graylist”-et, amibe azok a levelek kerülnek, amiket a spamassassin nem fogott meg (valószínűleg nem spam), de még nem vettem fel a whitelistra.

A különböző kódok értelmezésében az alábbi táblázat segíthet:

Code Meaning
554 Transaction failed (This is the default for messages using Postfix’ REJECT syntax.)
550 Requested action not taken: mailbox unavailable.(Good for sending permanent errors.)
450 Requested mail action not taken: mailbox unavailable. (Good for sending temporary errors.)

Via Filtering E-Mail with Postfix and Procmail