Courier-IMAP: eMail Sortierung mit procmail

Eine serverseitige Sortierung von eMails ist sehr praktisch, da sie unabhängig von den Clients arbeitet und daher direkt beim Erhalt der eMail schon sortiert und nicht erst dann, wenn der Client mit der vordefinierten Regal an die Mail kommt.

Courier IMAP kann relativ leicht mitgeteilt werden, dass es ab sofort nicht direkt an die Maildirs der Benutzer ausliefert, sondern an procmail. Procmail selbst entscheidet dann, in welchen Ordner im Maildir die eMail zugestellt werden soll.

Courier IMAP unterstützt zudem die IMAP-Idle Funktionalität bis in die einzelnen Folders, sodass weiterhin (sofern der Client dies auch unterstützt) die Mails auf die Endgeräte gepusht werden können.

Konfiguration von Courier-IMAP

Zuerst ist es ratsam, Courier-IMAP zu konfigurieren. Unter Ubuntu 10.04 (Lucid Lynx) sind folgende Änderungen in der /etc/courier-imap/imapd empfohlen:

#Clients können dieselben Verzeichnisse gleichzeitig öffnen
IMAP_ENHANCEDIDLE=1
#Zwingend erforderlich bei IMAP_ENHANCCEDIDLE=1
IMAP_USELOCKS=1
#Push in allen Verzeichnissen
IMAP_CHECK_ALL_FOLDERS=1

Courier-Imap kurz neustarten

service courier-imap restart

Procmail einrichten

Procmail kann über die Paketverwaltung installiert werden

apt-get install procmail

Da Courier-IMAP ab sofort nicht mehr direkt die Mails in die Postfächer ausliefert, sondern Procmail dafür angeheuert werden soll, muss dafür in den Mail-Ordnern der jeweiligen Benutzern die .qmail bearbeitet werden. Daher editiert man bspw. die Datei für die eMail Adresse user@domain wie folgt /var/qmail/mailnames/domain/user/.qmail:

| true
| /usr/bin/procmail -m .procmailrc

Da die .qmail Datei bei Empfang von Mails jedes mal erneut ausgeführt wird, muss courier-imap nicht neugestartet werden
Zusätzlich wird noch die Datei .procmailrc benötigt, die besagt, welche ‚Was tun wenn‘ Regeln ausgeführt werden sollen.
Diese wird genauso unter /var/qmail/mailnames/domain/user/.procmailrc erzeugt:

## Wichtig: alle anderen Mails sollen in den Posteingang
:0 w
    ./Maildir/

Die Regeln werden dann darüber eingefügt.

Die Von Filterung

## eMails vom Absender absender@absender.de sollen 
## ins Postfach eMailsVonAbsender geschoben werden
:0 w
    * ^From:.*absender@absender.de
    ./Maildir/.eMailsVonAbsender/

Die An Filterung

## eMails, die an empfaenger@empfaenger.de gesendet wurden
## sollen in das Postfach eMailsAnEmpfaenger geschoben werden
  :0 w
    * ^TO.*empfaenger@empfaenger.de
    ./Maildir/.eMailsAnEmpfaenger/

Die Betreff Filterung

## eMails mit dem Betreff Suchbetreff ins Postfach
## BetreffPostfach schieben
:0 w
    * ^Subject:.*Suchbetreff
    ./Maildir/.BetreffPostfach/

SpamAssasin Sortierung

# Spam-Mails in den Ordner SPAM verschieben
:0 w
    * ^Subject:.\*\*\*\*\*SPAM\*\*\*\*\*\*
    ./Maildir/.SPAM/

Sonstige Tipps

Bei den Pfaden zum Postfach aufpassen: Das angegebene Postfach muss mit einem / enden

Regeln können mittels | auch kombiniert werden (Oder Kombinationen). Beispiel: * ^TO.*empfaenger@empfaenger.de|^TO.*empfaenger2@empfaenger.de

Postfächer werden mit . getrennt, daher : ./Maildir/.Directory.Subdirectory.SubSubDirectory/

Zu guter letzt…

Funktioniert dann idealerweise die Procmail Sortierung.

Dieser Beitrag wurde unter Linux / Unix abgelegt und mit , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Eine Antwort auf Courier-IMAP: eMail Sortierung mit procmail

  1. Pingback: Mail-Sortierung mit Procmail – Der interne Briefverteiler | Kex

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.