Drift/Mail/Mailfiltrering

From Programvareverkstedet
< Drift‎ | Mail

Filtrering basert på mottakeradresse

På PVV har man mulighet for å legge til et ekstra suffiks på epostadressen sin, ved hjelp av tegnene + eller -. Disse tre er alle adresser som ville kommet til den fiktive brukeren johndoe om han eksisterte:

  • johndoe@pvv.ntnu.no
  • johndoe+venner@pvv.ntnu.no
  • johndoe-sourceforge@pvv.ntnu.no

Ofte ønsker man å plassere mail til hver av disse adressene i hver sin mailboks. Dette kan gjøres ved å lage et filter som inspiserer headeren Delivered-To. Delivered-To settes av mailsystemet rett før mailen leveres. Om mailen ble sendt til addressen johndoe+venner@pvv.ntnu.no vil denne headeren se slik ut:

Delivered-To: johndoe+venner@pvv.ntnu.no

Hva du benytter for å filtrere er ikke viktig. For øyeblikket har PVV-brukere mulighet til å bruke i hvert fall Procmail (/usr/bin/procmail) og Maildrop (/usr/bin/maildrop) til mailfiltrering (for informasjon om hvordan man slår disse på, se siden Innkommende mail), men du kan like gjerne bruke noe annet om du ønsker det.

Her er et eksempel på en Procmail-regel som sender johndoe+venner@pvv.ntnu.no til filen ~/Mail/venner:

:0:
* ^Delivered-To: johndoe\+venner@pvv\.
$HOME/Mail/venner

Ved å droppe å ta med den siste ntnu.no i regelen vil både @pvv.ntnu.no og @pvv.org virke.

Fjerning av spam

Spamassassin kjøres på all mail som mottas. Etter at mailen er analysert settes et par headere som indikerer resultatet av analysen. Disse kan så brukes til filtrering.

Eksempel på headere:

X-Spam-Score: -1.2 (-)
X-Spam-Report: Status=No hits=-1.2 required=5.0 tests=ALL_TRUSTED,MISSING_SUBJECT version=3.0.3

Det mest aktuelle er å teste på X-Spam-Report: Status=Yes. Dette kan for eksempel gjøres slik med procmail:

:0:
* ^X-Spam-Report: Status=Yes
$HOME/Mail/spam

Dette vil plassere spam i filen Mail/spam.

Testing av oppsett

Testing av oppsett kan gjøres ved hjelp av formail. Eksempel:

formail -s procmail .procmailrc_generert_av_drift < mbox

Der .procmailrc_generert_av_drift er konfigurasjonen til procmail (for anledningen navngitt som filene vi autogenererte i forbindelse med bytte av mailsystem) og mbox er en mbox-fil med noen test-epost. Dersom du har en annen filterløsning du vil teste, bytt ut procmail .procmailrc_generert_av_drift med ditt filterprogram slik du kaller det i .forward-filen.