Postfix-spamfilter

Spam Scanner filtrerer en Postfix-server på omkring fem minutter. Den kører som en milterMailfilter: en protokol fra Sendmail, som også bruges af Postfix, og som lader et separat program undersøge hver besked under SMTP-sessionen., så Postfix spørger den om hver besked under SMTP-sessionen og kan afvise spam, før den modtages.

Installér og kør#

Shell
npm install --global spamscanner
spamscanner milter --port 7831 --auth --subject-tag "[SPAM]"

--auth tjekker SPFSender Policy Framework: en DNS-post, der angiver de servere, som må sende post for et domæne., DKIMDomainKeys Identified Mail: en signatur over en besked, der tjekkes med en offentlig nøgle, som er offentliggjort i afsenderens DNS., DMARCEn DNS-politik, der fortæller modtagere, hvad de skal gøre, når post, der udgiver sig for at komme fra et domæne, ikke består SPF- og DKIM-justeringen. og ARCAuthenticated Received Chain: signaturer, der bærer godkendelsesresultater videre gennem videresendende servere.; --subject-tag markerer spam i emnefeltet. Hver besked får headerne X-Spam-Flag, X-Spam-Score, X-Spam-Status og X-Spam-Action, og enhver X-Spam-*-header, som afsenderen har sat ind, fjernes først.

Forbind Postfix#

INI
# /etc/postfix/main.cf
smtpd_milters = inet:127.0.0.1:7831
milter_protocol = 6
milter_default_action = accept
Shell
sudo postfix reload

milter_default_action = accept lukker post igennem ufiltreret, hvis milteren er nede; tempfail beder i stedet afsendere om at prøve igen.

Afvis spam under SMTP-sessionen#

Shell
spamscanner milter --port 7831 --auth --reject

Beskeder ved afvisningsgrænsen (15 point) afvises med 451 4.7.1 Message rejected as spam. En 451 er midlertidig: afsenderen beholder beskeden og prøver igen, så en forkert afgørelse koster en forsinkelse og ikke en tabt besked. Når resultaterne ser rigtige ud, gør --reject-code 550 afvisningen permanent.

Uden en milter#

Et indholdsfilter kører, efter at Postfix har modtaget en besked: Postfix sender den videre til spamscanner filter, som tilføjer headere og giver den tilbage. Intet afvises nogensinde under sessionen, og en fejl udsætter altid leveringen i stedet for at sende beskeden retur. Opsætning af indholdsfilter

Spam i Junk-mappen#

Med Dovecot lægger en Sieve-regel markeret post i Junk:

Text
require ["fileinto"];
if header :is "X-Spam-Flag" "YES" { fileinto "Junk"; stop; }

Testet mod en rigtig Postfix#

Projektets end-to-end-test kører Postfix med milteren og indholdsfilteret: hamØnsket post: det modsatte af spam. leveres med headere og med en forfalsket X-Spam-Flag fjernet, spam markeres, og GTUBEGeneric Test for Unsolicited Bulk Email: en fast tekststreng, som alle spamfiltre behandler som spam, til test. afvises med en 550 under SMTP-sessionen.

Næste: den fulde vejledning til Postfix og Sendmail med en systemd-unit og Sendmails INPUT_MAIL_FILTER.

Redigér denne side på GitHub · Markdown ·