2016-03-16

Mars 2016 - Stoppa spam med Postfix

Spam är ett ständigt återkommande problem och kamp som aldrig tar slut. På mitt webbhotell så körs Postfix som mailserver och tar emot alla mail. Alla mail som tas emot får en spamklassificering av spamassassin med en ranking beroende på utformning och innehåll. Varje person som har ett mailkonto kan sedan själva ställa in utifrån antal spampoäng om ett mail ska kastas, läggas i en separat spambox eller levereras som vanligt.
Om man en kund däremot väljer att vidarebefordra ett alias till ett extern konto eller om kunden inte slår på spamfiltrering och väljer att vidarebefordra så kan den mottagande servern välja att studsa tillbaka de mail som den anser vara spam. Här uppstår då problemet. De spam som studsar tillbaka fastnar på servern i mailkön eftersom de inte ska vara kvar lokalt och tas inte emot hos nästa server. Om det blir väldigt många mail så fyller den mailkön. Ett annat mer allvarligt problem är att min mailserver kan anses skicka spam vilket gör att den till slut blir blockerad i olika spamlistor eller förhindras på andra sätt. Exempelvis så begränsar Gmail antalet mail som kan tas emot per tidsenhet från en mailserver som skickar mycket spam.

Lösningen är att låta Postfix göra en grovfiltering av de värsta syndarna. Det finns mängder av inställningar man kan göra. Jag har valt att lägga till några stycken och sen följa upp vad som händer och än så länge så har jag inga studsar skett.

Referens som jag använt: http://en.linuxreviews.org/HOWTO_Stop_spam_using_Postfix

Inställningarna i main.cf:
smtpd_helo_required = yes
(Välkonfigurerade mailservrar säger hej när de ansluter)

smtpd_sender_restrictions = reject_unknown_address, permit

(Den som skickar mail säger normalt vem det är från)

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_invalid_hostname, reject_unknown_recipient_domain, reject_unauth_pipelining, reject_unauth_destination, reject_rbl_client zen.spamhaus.org, reject_rbl_client bl.spamcop.net, permit
(Börja med att tillåta mina egna kunder att göra vad de vill. Gör reject på alla som inte berättar vilka de är. Avsluta med göra reject på de requests som kommer från klienter listade i spamlistor.)

System och tjänster som uppdaterats sedan förra uppdateringen: