Hi,
habe folgende Konfiguration: Fetchmail holt die mails ab, procmail sortiert sie und gibt sie per deliver an cyrus weiter.Soweit ich das verstanden habe kommt da postfix gar nicht ins Spiel ? Oder doch ? Bei ausgehenden Mails per smtp sendet postfix.
Auf Spam kontrolliere ich die Mails per procmail. Dort binde ich verschiedene Spamprogramme ein. Procmail legt die Mails dann in die Cyrus Imap Boxen.
Bloss wo binde ich jetzt und wie den Virenscanner ein ?
Es ist doch so daß postfix die eingehenden Mails gar nicht zu Gesicht bekommt, da Sie ja nicht per smtp ankommen, sondern per fetchmail beim Provider abgeholt werden ??? Oder verstehe ich da was falsch ?
Mails sollen übrigens eingehend und ausgehend nach Viren kontrolliert werden.
Ich habe bis jetzt nur How To s mittels Amavis gefunden, den man direkt in Postfix einbindet. Doch das klappt bei mir doch nicht wegen fetchmail/procmail oder ????
Eigentlich soll das alles so ablaufen:
mailaccount(gmx)->fetchmail->postfix(->virenscanner)->procmail->spamfilter ->proprocmail->deliver->cyrus
hier meine fetcmailrc:
poll pop.gmx.net protocol pop3 user antorox@gmx.net password geheim mda "/usr/bin/procmail ~/.procmailrc"
hier die main.cf:
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
hier procmailrc:
# Das Logfile, in das Fehlermeldungen etc. geloggt werden
#
LOGFILE=/var/log/procmail
# deliver sortiert die Mails in die Cyrus-Mailboxen ein
#
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
# Kurznamen" fuer einige Zustellbefehle
#
IMAP="$DELIVERMAIL -e -a $LOGNAME -m user.$LOGNAME"
# Zustellung in die INBOX des Users:
#
:0 w
| /bin/sed 1d | $IMAP
----
Irgendwo ist doch der Haken ;-)
Eigentlich müsste ich doch in fetchmail einfach nur nachpostfix leiten, also procmail rausnehmen :)
Dann ist dasss doch hier doppelt gemoppelt oder:
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
???
Am besten dass hier raus oder:
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
un dann ganz normal in procmail per deliver zu cyrus:
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
usw. ....
Ist das ungefähr richtig ???
Weil im Moment läuft das so ab:
ct 17 01:38:52 base lmtpunix[1968]: executed
Oct 17 01:38:53 base lmtpunix[1968]: accepted connection
Oct 17 01:38:53 base lmtpunix[1968]: lmtp connection preauth'd as postman
Oct 17 01:38:53 base lmtpunix[1968]: IOERROR: fstating sieve script /var/lib/imap/sieve/a/antorox/defaultbc: No such file or directory
Oct 17 01:38:53 base lmtpunix[1968]: duplicate_check: <499626472.20051017013824@oleco.net> user.antorox 0
Oct 17 01:38:53 base lmtpunix[1968]: mystore: starting txn 2147483664
Oct 17 01:38:53 base lmtpunix[1968]: mystore: committing txn 2147483664
Oct 17 01:38:53 base lmtpunix[1968]: duplicate_mark: <499626472.20051017013824@oleco.net> user.antorox 1129505933 9
Oct 17 01:38:59 base master[1969]: about to exec /usr/lib/cyrus-imapd/imapd
und in der procmail log:
Subject: test
Folder: /usr/lib/cyrus-imapd/deliver -a antorox -m user.antorox 1375
cya
Fetchmail procmail cyrus und wie Virenscanner einbinden
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
Mit amavisd-new zum Beispiel. Oder als content_filter in Postfix. Oder über eine Pipe aus procmail heraus. Oder...antorox wrote:Bloss wo binde ich jetzt und wie den Virenscanner ein ?
Das kommt auf deine Konfiguration an. Du kannst die Mails aus fetchmail direkt an einen MDA (z. B. procmail) weitergeben. Wenn du das nicht eingerichtet hast, werden die Mails über den MTA verschickt.antorox wrote:Es ist doch so daß postfix die eingehenden Mails gar nicht zu Gesicht bekommt, da Sie ja nicht per smtp ankommen, sondern per fetchmail beim Provider abgeholt werden ??? Oder verstehe ich da was falsch ?
Wieso sollte das nicht gehen?antorox wrote:Ich habe bis jetzt nur How To s mittels Amavis gefunden, den man direkt in Postfix einbindet. Doch das klappt bei mir doch nicht wegen fetchmail/procmail oder ????
Ja. mailbox_transport hat Präzedenz über mailbox_command.antorox wrote:Dann ist dasss doch hier doppelt gemoppelt oder:
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
Gute idee, also ich nehm hier das mit procmail raus, um amavisd-new direkt in postfix einzubinden, oder ?Roger Wilco wrote: Mit amavisd-new zum Beispiel.
poll pop.gmx.net protocol pop3 user antorox@gmx.net password geheim mda "/usr/bin/procmail ~/.procmailrc"
davon gehe ich dann aus, also hat Sie postfix und gibt sie jetzt so weiter:Roger Wilco wrote: ....werden die Mails über den MTA verschickt.
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
weil daß hier erübrigt sich doch sowieso siehe meine jetzige fetchmailrc und überhaupt wenn ich es später auskommentiere nachdem ich die fetchmailrc geändert habe:
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
weil ich habe doch in der procmail dass:
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
????
hat doch vorher auch so geklappt oder ????
fetchmail:
poll pop.gmx.net protocol pop3 user antorox@gmx.net password geheim mda "/usr/bin/procmail ~/.procmailrc"
da wurde doch postfix eh übergangen ???
-----
und jetzt hat durch den Eintrag:
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
ohne:
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
procmail die Mail und gibt sie so:
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
an cyrus per deliver weiter
:)
währe schön wenn es klappt, oder ist hier n denkfehler ?
cya
PS:
der log macht mich stutzig:
ct 17 01:38:52 base lmtpunix[1968]: executed
Oct 17 01:38:53 base lmtpunix[1968]: accepted connection
Oct 17 01:38:53 base lmtpunix[1968]: lmtp connection preauth'd as postman
Oct 17 01:38:53 base lmtpunix[1968]: IOERROR: fstating sieve script /var/lib/imap/sieve/a/antorox/defaultbc: No such file or directory
Oct 17 01:38:53 base lmtpunix[1968]: duplicate_check: <499626472.20051017013824@oleco.net> user.antorox 0
Oct 17 01:38:53 base lmtpunix[1968]: mystore: starting txn 2147483664
Oct 17 01:38:53 base lmtpunix[1968]: mystore: committing txn 2147483664
Oct 17 01:38:53 base lmtpunix[1968]: duplicate_mark: <499626472.20051017013824@oleco.net> user.antorox 1129505933 9
Oct 17 01:38:59 base master[1969]: about to exec /usr/lib/cyrus-imapd/imapd
sieht doch nach dem hier aus und nen IO Error ist auch drin. Die mails kommen aber in der cyrus mailbox an:
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
http://www.rootforum.org/forum/viewtopic.php?t=37166
In dem Thread hatte ich gesagt, es wäre besser den fetchmail nicht direkt an procmail, sondern an postfix zu liefern - jetzt hast Du eine Anwendung und einen Grund dafür.
flo.
In dem Thread hatte ich gesagt, es wäre besser den fetchmail nicht direkt an procmail, sondern an postfix zu liefern - jetzt hast Du eine Anwendung und einen Grund dafür.
flo.
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
Hi,
okidoki, ich mach mich ran und werde berichten ;-)
cya
okidoki, ich mach mich ran und werde berichten ;-)
cya
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
Hi,
hm läuft wie am schnürchen ..., komisch siehe auch von "flo" genannten thread" und meinen Ã?nderungen mit den Rechten etc. ...
fetchmailrc:
poll pop.gmx.net proto pop3 user antorox@gmx.net with pass geheim is antorox here
main.cf (auszug):
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
procmailrc:
# Das Logfile, in das Fehlermeldungen etc. geloggt werden
#
LOGFILE=/var/log/procmail
# deliver sortiert die Mails in die Cyrus-Mailboxen ein
#
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
# Kurznamen" fuer einige Zustellbefehle
#
IMAP="$DELIVERMAIL -e -a $LOGNAME -m user.$LOGNAME"
# Zustellung in die INBOX des Users:
#
:0 w
| /bin/sed 1d | $IMAP
:)
master.cf (auszug)
#
# The Cyrus deliver program has changed incompatibly, multiple times.
#
old-cyrus unix - n n - - pipe
flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension} ${user}
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
cyrus unix - n n - - pipe
user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user}
cyrus.conf (auszug)
# at least one LMTP is required for delivery
# lmtp cmd="lmtpd" listen="lmtp" prefork=0
lmtpunix cmd="lmtpd -a" listen="/var/lib/imap/socket/lmtp" prefork=0
mailog:
Oct 17 22:50:02 base postfix/smtpd[3967]: connect from base.base.local[127.0.0.1]
Oct 17 22:50:02 base postfix/smtpd[3967]: 622518C62C: client=base.base.local[127.0.0.1]
Oct 17 22:50:02 base postfix/cleanup[3970]: 622518C62C: message-id=<985385934.20051017224904@hardtekk.org>
Oct 17 22:50:02 base postfix/qmgr[3865]: 622518C62C: from=<cIrox@hardtekk.org>, size=1530, nrcpt=1 (queue active)
Oct 17 22:50:02 base postfix/smtpd[3967]: disconnect from base.base.local[127.0.0.1]
Oct 17 22:50:03 base master[3976]: about to exec /usr/lib/cyrus-imapd/lmtpd
Oct 17 22:50:04 base lmtpunix[3976]: executed
Oct 17 22:50:04 base lmtpunix[3976]: accepted connection
Oct 17 22:50:04 base lmtpunix[3976]: lmtp connection preauth'd as postman
Oct 17 22:50:04 base lmtpunix[3976]: duplicate_check: <985385934.20051017224904@hardtekk.org> user.antorox 0
Oct 17 22:50:05 base lmtpunix[3976]: mystore: starting txn 2147483650
Oct 17 22:50:05 base lmtpunix[3976]: mystore: committing txn 2147483650
Oct 17 22:50:05 base lmtpunix[3976]: duplicate_mark: <985385934.20051017224904@hardtekk.org> user.antorox 1129582204 17
Oct 17 22:50:05 base postfix/local[3971]: 622518C62C: to=<antorox@localhost.base.local>, orig_to=<antorox@localhost>, relay=local, delay=3, status=sent (delivered to command: /usr/bin/procmail -t -a $EXTENSION)
Oct 17 22:50:05 base postfix/qmgr[3865]: 622518C62C: removed
procmaillog:
From cIrox@hardtekk.org Mon Oct 17 22:50:02 2005
Folder: /bin/sed 1d | $IMAP 1651
Kann ich jetzt davon ausgehen, dass das nach meinen Wünschen läuft ?
mailaccount(gmx)->fetchmail->postfix(hier jetzt virenscanner einbinden!!)->procmail(hier spamfilter einbinden !!! und in die mailboxen sortieren) ->deliver->cyrus
cya
PS: Was ich noch nicht ganz raffe ist warum ich in cyrus das hier aktivieren muss und ausgerechnet postfix siehe maillog dieses nimmt,es weiß doch an der Stelle noch garnichts von cyrus, schließlich wandert die mail noch zu procmail und dort erst wird über deliver zu cyrus transportiert ....
lmtpunix cmd="lmtpd -a" listen="/var/lib/imap/socket/lmtp" prefork=0
hm läuft wie am schnürchen ..., komisch siehe auch von "flo" genannten thread" und meinen Ã?nderungen mit den Rechten etc. ...
fetchmailrc:
poll pop.gmx.net proto pop3 user antorox@gmx.net with pass geheim is antorox here
main.cf (auszug):
mailbox_command = /usr/bin/procmail -t -a $EXTENSION
procmailrc:
# Das Logfile, in das Fehlermeldungen etc. geloggt werden
#
LOGFILE=/var/log/procmail
# deliver sortiert die Mails in die Cyrus-Mailboxen ein
#
DELIVERMAIL="/usr/lib/cyrus-imapd/deliver"
# Kurznamen" fuer einige Zustellbefehle
#
IMAP="$DELIVERMAIL -e -a $LOGNAME -m user.$LOGNAME"
# Zustellung in die INBOX des Users:
#
:0 w
| /bin/sed 1d | $IMAP
:)
master.cf (auszug)
#
# The Cyrus deliver program has changed incompatibly, multiple times.
#
old-cyrus unix - n n - - pipe
flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension} ${user}
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
cyrus unix - n n - - pipe
user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user}
cyrus.conf (auszug)
# at least one LMTP is required for delivery
# lmtp cmd="lmtpd" listen="lmtp" prefork=0
lmtpunix cmd="lmtpd -a" listen="/var/lib/imap/socket/lmtp" prefork=0
mailog:
Oct 17 22:50:02 base postfix/smtpd[3967]: connect from base.base.local[127.0.0.1]
Oct 17 22:50:02 base postfix/smtpd[3967]: 622518C62C: client=base.base.local[127.0.0.1]
Oct 17 22:50:02 base postfix/cleanup[3970]: 622518C62C: message-id=<985385934.20051017224904@hardtekk.org>
Oct 17 22:50:02 base postfix/qmgr[3865]: 622518C62C: from=<cIrox@hardtekk.org>, size=1530, nrcpt=1 (queue active)
Oct 17 22:50:02 base postfix/smtpd[3967]: disconnect from base.base.local[127.0.0.1]
Oct 17 22:50:03 base master[3976]: about to exec /usr/lib/cyrus-imapd/lmtpd
Oct 17 22:50:04 base lmtpunix[3976]: executed
Oct 17 22:50:04 base lmtpunix[3976]: accepted connection
Oct 17 22:50:04 base lmtpunix[3976]: lmtp connection preauth'd as postman
Oct 17 22:50:04 base lmtpunix[3976]: duplicate_check: <985385934.20051017224904@hardtekk.org> user.antorox 0
Oct 17 22:50:05 base lmtpunix[3976]: mystore: starting txn 2147483650
Oct 17 22:50:05 base lmtpunix[3976]: mystore: committing txn 2147483650
Oct 17 22:50:05 base lmtpunix[3976]: duplicate_mark: <985385934.20051017224904@hardtekk.org> user.antorox 1129582204 17
Oct 17 22:50:05 base postfix/local[3971]: 622518C62C: to=<antorox@localhost.base.local>, orig_to=<antorox@localhost>, relay=local, delay=3, status=sent (delivered to command: /usr/bin/procmail -t -a $EXTENSION)
Oct 17 22:50:05 base postfix/qmgr[3865]: 622518C62C: removed
procmaillog:
From cIrox@hardtekk.org Mon Oct 17 22:50:02 2005
Folder: /bin/sed 1d | $IMAP 1651
Kann ich jetzt davon ausgehen, dass das nach meinen Wünschen läuft ?
mailaccount(gmx)->fetchmail->postfix(hier jetzt virenscanner einbinden!!)->procmail(hier spamfilter einbinden !!! und in die mailboxen sortieren) ->deliver->cyrus
cya
PS: Was ich noch nicht ganz raffe ist warum ich in cyrus das hier aktivieren muss und ausgerechnet postfix siehe maillog dieses nimmt,es weiß doch an der Stelle noch garnichts von cyrus, schließlich wandert die mail noch zu procmail und dort erst wird über deliver zu cyrus transportiert ....
lmtpunix cmd="lmtpd -a" listen="/var/lib/imap/socket/lmtp" prefork=0
Re: Fetchmail procmail cyrus und wie Virenscanner einbinden
Wenn es auch alles ankommt, dann ja ...antorox wrote:From cIrox@hardtekk.org Mon Oct 17 22:50:02 2005
Folder: /bin/sed 1d | $IMAP 1651
Kann ich jetzt davon ausgehen, dass das nach meinen Wünschen läuft ?
fetchmail gibt die Mail an Deinen lokalen MTA weiter - von da aus wird mit Deinen GMX-Mails verfahren wie mit jeder anderen Mail auf dem System auch.antorox wrote:PS: Was ich noch nicht ganz raffe ist warum ich in cyrus das hier aktivieren muss und ausgerechnet postfix siehe maillog dieses nimmt,es weiß doch an der Stelle noch garnichts von cyrus, schließlich wandert die mail noch zu procmail und dort erst wird über deliver zu cyrus transportiert ....
lmtpunix cmd="lmtpd -a" listen="/var/lib/imap/socket/lmtp" prefork=0
Deliver gibt seit den neuen Versionen standardmäßig über lmtp weiter, deshalb auch das Rechteproblem, für das aber chmod 777 nicht unbedingt eine Lösung ist - besser wäre es die Gruppen anzupassen, das machst du, wenn Du statt mailbox_command den mailbox_transport (cyrus) setzt - hier wird dann der procmail als cyrus ausgeführt und also auch der deliver.
Spamfilterung im procmail ist durchaus statthaft, aber wenn Du z.B. amavis einsetzt, dann kannst Du dort gleich z.B. spamassassin einbinden. Das macht die Anzahl der Zwischenschritte etwas kleiner.
flo.