[Postfixbuch-users] Mails auf relayhost nachbearbeiten

Michael Schams spamprobe at neusta.de
Do Nov 28 12:37:57 CET 2002


Hi PostfixAdmins, hallo Ralf & Peer :-)

wir setzen Postfix (postfix-1.1.11) auf einem smtp-relayhost ein, der 
mails zwischen dem internet und anderen mailservern transportiert, 
ungefähr wie folgt:

   [ MailServer1 ] <---->  .--------------------.
   [ MailServer2 ] <---->  ! Postfix-SMTP-RELAY !  <----> Internet
   [ MailServer3 ] <---->  '--------------------'

Nun sollen ALLE mails, die durch diesen Host gehen, nachbearbeitet 
werden (z.B. eigene Header-Zeilen hinzufügen, bestimmte Wörter im 
Mailbody zählen, am Ende jeder Mail weitere Zeilen hinzufügen, oder was 
auch immer).

Dafür habe ich folgende Zeilen in der $POSTFIX/master.cf hinzugefügt, 
mit dem Ziel, procmail als content_filter zu aktivieren:

---- cut here ----
smtp     inet n - n - - smtpd -o content_filter=procmail:
# [...]
procmail unix - n n - - pipe
     flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc 
${sender} ${recipient}
---- cut here ----

Durch die Datei /etc/procmailrc kann ich nun alle möglichen Aktionen 
durchführen: bestimmte Mails, die z.B. mit einem externen Programm als 
Spam erkannt wurden, abfangen, beliebige Header-Zeilen hinzufügen usw.

Es geht nun aber darum, die "nachbearbeitete" Mail wieder an Postfix zur 
weiteren Verarbeitung zurückzugeben.

Füttere ich /usr/sbin/sendmail mit der Mail oder versuche ich, die Mail 
an den eigentlichen Empfänger weiterzuleiten... wie folgt:

   RECIPIENT='formail -x "To: "'

   :0
   ! $RECIPIENT

...werden im Header folgende Zeilen hinzugefügt:

 > Sender: nobody at system.domain.de
 > Return-Path: nobody at system.domain.de

da die procmail-Instanz ja von dem Benutzer "nobody" gestartet wurde.

Gibt es irgendwelche Ideen, wie man das unterbinden könnte oder andere 
Konzepte, Mails durch einen relayhost zwischenzuspeichern, 
nachzubearbeiten und wieder an das System zu reinjizieren?

PS: Die AMaViS-Idee (reinjizieren der bearbeiteten mail auf einem 
anderen smtp-Port) ist ne gute Möglichkeit, erfordert aber ausgeklügelte 
smtp-kommandos, die die bash wohl nicht unterstützt und perl möchten wir 
nicht auch noch einsetzen.

Danke im voraus und Grüße aus Bremen... :-)
-- 
Michael Schams
Fa. NEUSTA Computersprachen GmbH  [http://www.neusta.de]
Phone: +49(0)421/20696-0  *  Fax: +49(0)421/20696-99




Mehr Informationen über die Mailingliste Postfixbuch-users