Procmail
Zur Nutzung von Procmail wird zunächst im Verzeichnis des Nutzers die Datei .forward mit folgendem Inhalt angelegt:
"|/usr/bin/procmail"
Damit werden die Mails nun über das Programm Procmail ausgeliefert, und die Art der Auslieferung wird über die Datei ~/.procmailrc konfiguriert.
Beispiel
Diese .procmailrc-Datei setzt die Verzeichnisse Spam und Hostsharing in Ihrem Mailverzeichnis voraus:
# Kein Logging als Default COMSAT=no LOGABSTRACT=no VERBOSE=no LOGFILE=procmail.log # Systemweiten Spamassassin-Daemon für alle Mails aufrufen... :0fw | /usr/bin/spamc -U /var/run/spamd # ...und Spam in eigenem Folder aussortieren :0 * ^X-Spam-Flag: YES Maildir/.Spam/ # Mailinglisten von Hostsharing kommen in eine eigene Mailbox. :0 * ^TO_(support|technik|website)@hostsharing\.net Maildir/.Hostsharing/
Alle nicht ausgefilterten Mails landen in der normalen Mailbox.
:0 leitet eine Filterregel ein und fw in der ersten Regel sorgt dafür, dass Procmail wartet, bis das Programm fertig ist.
Abwesenheitsbenachrichtigung (vacation)
Zunächst erstellen Sie in Ihrem Home-Verzeichnis eine Datei vacation.msg, deren Text als Nachricht verschickt werden soll.
In die .procmailrc werden anschließend folgende Zeilen eingefügt:
SHELL=/bin/sh FORMAIL=/usr/bin/formail SENDMAIL=/usr/sbin/sendmail :0 Whc: vacation.lock # Nur E-Mails, die an meine Adresse adressiert sind * ^TO_myself@example\.com # Daemons (Mailinglisten) ausschließen * !^FROM_DAEMON # Loop vermeiden: eigene E-Mail ausschließen * !^X-Loop: myself@example.com # Adresse des Senders im Cache speichern | formail -rD 8192 vacation.cache # e: letztes recipe trifft nicht zu (Adresse noch nicht im Cache vorhanden) :0 ehc | ($FORMAIL -rA "Precedence: junk" -A "X-Loop: myself@example.com"; /bin/cat vacation.msg ) | $SENDMAIL -oi -t -f myself@example.com
Eine E-Mail mit dem Inhalt der Datei vacation.msg und dem Absender myself@example.com wird an den Sender geschickt. Allerdings geschieht dies nur, wenn die Adresse noch nicht in der vacation.cache-Datei vorhanden war. Damit wird vermieden, dass ein Absender immer wieder dieselbe Abwesenheitsnachricht erhält.
Mail-Größe limitieren
In folgendem Besipiel wird die maximale Größe von E-Mails auf 16 MB beschränkt um die Mailbox-Größe (Quota) nicht zu schnell anwachsen zu lassen:
:0 * > 16777216 | (formail -brt ; \ echo "I am sorry, I don't accept mails larger than 16MB." ;\ echo ""; \ ) | $SENDMAIL -oi -t
Zum Weiterlesen
- pm-tips
- A collection of procmail recipes, instructions, howtos.
- Timo's procmail tips and recipes
- procmail tips and recipes
- Spamcheck
- Ein Script, mit dem man über ausgefilterte E-Mails unterrichtet wird.

