Postfix + procmail Verständnissfrage

buebo

Well-Known Member
Moin,
ich bin grade dabei mich mal mit dem Mail-Konzept von Unix vertraut zu machen und das Ganze auch in die Tat umzusetzen (ich beabsichtige meinem Router-Howto verstärkung zukommen zu lassen ;-)), allerdings habe ich grade einen kleinen Knoten im Kopf, folgende Situation:

Als MTA habe ich hier Postfix laufen, zum Einen als SMTP-Server für das interne Netz, zum anderen auch um Mails auf einem dyndns Account zu empfangen.
Daneben läuft auch noch fetchmail das einige POP3-Server plündert und diese Mails dann an Postfix weiterreicht, der verteilt sie dann in die entsprechenden Mailboxen.
Nun würde ich die Mails gerne von Postfix an procmail weiterleiten lassen. Nach meinem Verständniss kann man das durch eine .forward im Home-Verzeichniss des entsprechden Benutzers passieren lassen, andererseits würde ich das lieber global Handhaben und bin auf den Eintrag mailbox_command = /some/where/procmail in der main.cf von Postfix gestossen.
Meine (wie ich befürchte) etwas dämliche Frage: Wenn ich nun procmail durch Postfix aufrufe, *kennt* procmail dann denn Benutzer für den die Mail bestimmt ist? Im fall von buebo@meine-url.de ist das ja klar, aber wie ist das mit den Accounts die von Fetchmail geholt werden?
Was ich meine ist, benutzt procmail eine evtl. vorhandene .procmailrc im Homervezeichniss und kann man in Procmail z.B. nach ~/irgendeinpfad sortieren lassen?

buebo
 
Zuletzt bearbeitet:
Installiere procmail und rufe "man procmail" auf:

[...]
If no rcfiles and no -p have been specified on the command line, proc-
mail will, prior to reading $HOME/.procmailrc, interpret commands from
/usr/local/etc/procmailrc (if present). Care must be taken when creat-
ing /usr/local/etc/procmailrc, because, if circumstances permit, it
will be executed with root privileges (contrary to the $HOME/.proc-
mailrc file of course).
[...]
 
Vielleicht hatte ich mich falsch ausgedrückt. Das procmail erst in dem Heimverzeichniss schaut und danach die /usr/local/etc/procmailrc nimmt war mir schon klar.
Mir ging es darum ob procmail weis für welchen Benutzer es überhaupt die Mails sortieren soll wenn ich es direkt durch Postfix aufrufen lasse, wenn es diesen nicht kennt wäre es ja nicht möglich eine mail z.B. nach ~/pfad umzuleiten.
Ich habe leider die Mail-Handling-Fachtermini noch nicht wirklich drauf, deswegen will versuchen das an einem Beispiel zu erklären.
Fetchmail findet eine Mail auf einem POP-Server und leitet diese per SMTP an Postfix weiter, Postfix hat nun in seiner main.cf als Mailbox-Command procmail stehen, ruft also Procmail auf und übergibt ihm die Mail.
Weiss Procmail denn nun für welchen Benutzer die ist? Denn sonst macht es beim Filtern keinen Sinn als Bestimmungsort sowas wie Homeverzeichniss/Maildir anzugeben, weil ohne den Benutzer zu kennen weis Procmail ja auch das Homeverzeichniss nicht...

buebo,
der anscheinend auf dem Schlauch steht
 
Weiss Procmail denn nun für welchen Benutzer die ist? Denn sonst macht es beim Filtern keinen Sinn als Bestimmungsort sowas wie Homeverzeichniss/Maildir anzugeben, weil ohne den Benutzer zu kennen weis Procmail ja auch das Homeverzeichniss nicht...

Der procmail Prozess läuft unter der Userid des Benutzers, dem die mail zugestellt wird. Alles andere wäre sicherheitstechnisch ja glatter Selbstmord...
 
hiho,

du kannst die Mails doch gleich von fetchmail an procmail übergeben lassen.

ala:

poll mail.provider.de protocol POP3 user asterix password adam mda "/usr/bin/procmail -d eva"


link
 
Original geschrieben von kramer
hiho,

du kannst die Mails doch gleich von fetchmail an procmail übergeben lassen.

Das kann ich zwar machen, allerdings soll Procmail auch die Mails bekommen die über Postfix empfangen werden, so das ich anyway eine Methode brauche um die Mails von Postfix an procmail weiter zu leiten.
 
Zurück
Oben