Als welcher User wird Procmail ausgeführt?
N'abend zusammen! Am Anfang meines Linux-Servers (vor einem Jahr oder so) hab ich mein Mailsystem nach Howtos aus dem Internet (linux-tin.org und andere für Procmail) eingerichtet. Ich verwende Fetchmail, Postfix, Procmail und Cyrus unter SuSE 7.3 von den CDs installiert. Mein Problem besteht nun im Empfang von internen (im lokalen Netz) und externen (aus dem Internet) Mails (der Versand nach draussen ist problemlos): Es gibt derzeit zwei Wege des Mailempfangs: Externe Mails: Fetchmail -> Procmail -> Cyrus-Deliver Interne Mails: Postfix -> Cyrus-Deliver Wie man sieht, werden intern versandte Mails ja nicht durch Procmail sortiert, deshalb wollte ich das mal zusammenfassen, so daß der Mailempfang folgendermassen aussieht: Externe _und_ Interne Mails: Fetchmail -> Postfix -> Procmail -> Cyrus-Deliver Das habe ich mir auch sehr einfach vorgestellt und einfach in meiner /etc/postfix/main.cf angesetzt: mailbox_command = /usr/bin/procmail -t -a "$EXTENSION" mailbox_transport = cyrus #mailbox_transport = procmail fallback_transport = cyrus Steht mailbox_transport = cyrus, so werden die Mails nur dem User in die Inbox zugestellt - klar. Setze ich mailbox_transport = procmail, so werden die Mails korrekt in die Ordner sortiert und so weiter, aber es wird kein Logfile erstellt (/var/log/procmaillog). Ich erhalte dann in /var/log/mail: Sep 21 22:53:46 honorata procmail[21217]: Error while writing to "/var/log/procmaillog" Beim Weg über Fetchmail -> Procmail wird das Logfile tadellos erstellt. Ich vermute nun, daß Procmail mit einem anderen Benutzer aufgerufen wird, wenn es von Postfix aus aufgerufen wird. Aber von welchem? Von Benutzer postfix? Und wieso darf der plötzlich in /var/log/mail nicht mehr loggen? Schon mal vielen Dank für Eure Tipps, Ralf -- :: Ralf Carlet :: Fon & Fax: +49-(0)700-RALFCARLET :: eMail: ralf@carlet.de :: Web: http://www.carlet.de :: () ascii ribbon campaign - gegen html mail :: /\ - gegen proprietäre attachments
Ralf Carlet wrote:
N'abend zusammen!
Am Anfang meines Linux-Servers (vor einem Jahr oder so) hab ich mein Mailsystem nach Howtos aus dem Internet (linux-tin.org und andere für Procmail) eingerichtet. Ich verwende Fetchmail, Postfix, Procmail und Cyrus unter SuSE 7.3 von den CDs installiert.
Mein Problem besteht nun im Empfang von internen (im lokalen Netz) und externen (aus dem Internet) Mails (der Versand nach draussen ist problemlos):
Es gibt derzeit zwei Wege des Mailempfangs: Externe Mails: Fetchmail -> Procmail -> Cyrus-Deliver Interne Mails: Postfix -> Cyrus-Deliver
Wie man sieht, werden intern versandte Mails ja nicht durch Procmail sortiert, deshalb wollte ich das mal zusammenfassen, so daß der Mailempfang folgendermassen aussieht:
Externe _und_ Interne Mails: Fetchmail -> Postfix -> Procmail -> Cyrus-Deliver
Das habe ich mir auch sehr einfach vorgestellt und einfach in meiner /etc/postfix/main.cf angesetzt:
mailbox_command = /usr/bin/procmail -t -a "$EXTENSION" mailbox_transport = cyrus #mailbox_transport = procmail fallback_transport = cyrus
Steht mailbox_transport = cyrus, so werden die Mails nur dem User in die Inbox zugestellt - klar. Setze ich mailbox_transport = procmail, so werden die Mails korrekt in die Ordner sortiert und so weiter, aber es wird kein Logfile erstellt (/var/log/procmaillog).
Ich erhalte dann in /var/log/mail:
Sep 21 22:53:46 honorata procmail[21217]: Error while writing to "/var/log/procmaillog"
Beim Weg über Fetchmail -> Procmail wird das Logfile tadellos erstellt. Ich vermute nun, daß Procmail mit einem anderen Benutzer aufgerufen wird, wenn es von Postfix aus aufgerufen wird. Aber von welchem? Von Benutzer postfix? Und wieso darf der plötzlich in /var/log/mail nicht mehr loggen?
Schon mal vielen Dank für Eure Tipps,
# postconf default_privs bzw.: # man 8 local -- Andreas
Hallo Andreas! Andreas Winkelmann schrieb:
Ralf Carlet wrote:
... Beim Weg über Fetchmail -> Procmail wird das Logfile tadellos erstellt. Ich vermute nun, daß Procmail mit einem anderen Benutzer aufgerufen wird, wenn es von Postfix aus aufgerufen wird. Aber von welchem? Von Benutzer postfix? Und wieso darf der plötzlich in /var/log/mail nicht mehr loggen?
# postconf default_privs
bzw.:
# man 8 local
Ja das war ein prima Hinweis, danke. Benutzer Nobody arbeitet da, und ich lasse die Aktivitäten von Procmail nun einfach nach /var/mail loggen, was anderes fiel mir irgendwie nicht ein. Die Benutzerrechte zu ändern oder einen anderen Benutzer als Nobody einzusetzen fand ich auch nicht so sinnvoll (oder anders: so wie es ist hat es ja schließlich seinen Sinn). Besten Gruß, Ralf -- :: Ralf Carlet :: Fon & Fax: +49-(0)700-RALFCARLET :: eMail: ralf@carlet.de :: Web: http://www.carlet.de :: () ascii ribbon campaign - gegen html mail :: /\ - gegen proprietäre attachments
participants (2)
-
Andreas Winkelmann
-
Ralf Carlet