Postfix-rspamd Problem durch recipient_bcc_maps
Am 18.10.21 um 17:26 schrieb Andreas Wass - Glas Gasperlmair:
Hallo Liste,
möchten in naher Zukunft auf Postfix mit Dovecot und rspamd (zur Zeit amavisd) umsteigen.
1.) Alle eingehenden und ausgehenden Mails sollten zusätzlich mit postfix durch recipient_bcc_maps und sender_bcc_maps an die Archivpostfächer archiveingang@meinedomain.at und archivausgang@meinedomain.at weitergeleitet.
2. Soll ein globales Sieve-Script alle Mails, welche header :contains "X-Spam" "Yes" haben in einen globalen Spam-Ordner redirecten
3.) alle Mails welche header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"] haben in einen globalen Banned-Ordner redirecten.
Das Problem dabei ist, dass auch alle Mails durch recipient_bcc_maps und sender_bcc_maps durch die Prüfung von rspamd geschickt werden und dann natürlich doppelt in den spam und banned ordner landen und die Filterung im Sievescript unnötig erschwert wird.
Gibt es eine Möglichkeit, die Prüfung dieser E-Mails mit rspamd auszulassen über die multimaps oder ähnliches, oder über die master.cf bzw. main.cf in postfix wenn diese per recipient_bcc_maps und sender_bcc_maps weitergeleitet werden?
Oder was würdet ihr für so eine Anforderung machen?
Vg, Andi
mit rspamd kenne ich mich nicht aus aber ich hab uber sowas aehnliches mal einen blog geschrieben evtl hilfts ein wenig
https://blog.sys4.de/mailarchiv-mit-dovecot-und-postfix-sortiert-nach-datum-...
Vielen Dank Robert,
ich werd's mir anschauen. vg, Andi
Am 18.10.2021 um 18:03 schrieb Robert Schetterer:
Am 18.10.21 um 17:26 schrieb Andreas Wass - Glas Gasperlmair:
Hallo Liste,
möchten in naher Zukunft auf Postfix mit Dovecot und rspamd (zur Zeit amavisd) umsteigen.
1.) Alle eingehenden und ausgehenden Mails sollten zusätzlich mit postfix durch recipient_bcc_maps und sender_bcc_maps an die Archivpostfächer archiveingang@meinedomain.at und archivausgang@meinedomain.at weitergeleitet.
2. Soll ein globales Sieve-Script alle Mails, welche header :contains "X-Spam" "Yes" haben in einen globalen Spam-Ordner redirecten
3.) alle Mails welche header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"] haben in einen globalen Banned-Ordner redirecten.
Das Problem dabei ist, dass auch alle Mails durch recipient_bcc_maps und sender_bcc_maps durch die Prüfung von rspamd geschickt werden und dann natürlich doppelt in den spam und banned ordner landen und die Filterung im Sievescript unnötig erschwert wird.
Gibt es eine Möglichkeit, die Prüfung dieser E-Mails mit rspamd auszulassen über die multimaps oder ähnliches, oder über die master.cf bzw. main.cf in postfix wenn diese per recipient_bcc_maps und sender_bcc_maps weitergeleitet werden?
Oder was würdet ihr für so eine Anforderung machen?
Vg, Andi
mit rspamd kenne ich mich nicht aus aber ich hab uber sowas aehnliches mal einen blog geschrieben evtl hilfts ein wenig
https://blog.sys4.de/mailarchiv-mit-dovecot-und-postfix-sortiert-nach-datum-...
Hallo Andi,
On 18.10.21 17:26, Andreas Wass - Glas Gasperlmair wrote:
möchten in naher Zukunft auf Postfix mit Dovecot und rspamd (zur Zeit amavisd) umsteigen.
1.) Alle eingehenden und ausgehenden Mails sollten zusätzlich mit postfix durch recipient_bcc_maps und sender_bcc_maps an die Archivpostfächer archiveingang@meinedomain.at und archivausgang@meinedomain.at weitergeleitet.
2. Soll ein globales Sieve-Script alle Mails, welche header :contains "X-Spam" "Yes" haben in einen globalen Spam-Ordner redirecten
3.) alle Mails welche header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"] haben in einen globalen Banned-Ordner redirecten.
Das Problem dabei ist, dass auch alle Mails durch recipient_bcc_maps und sender_bcc_maps durch die Prüfung von rspamd geschickt werden und dann natürlich doppelt in den spam und banned ordner landen und die Filterung im Sievescript unnötig erschwert wird.
bist Du sicher, dass das so ist und die Mails x-fach durch Rspamd laufen? Hast Du das praktisch schon so getestet und gesehen, oder sind das momentan Vorüberlegung für Dein zukünftiges Setup?
Denn wenn ich mir das mal schnell im Log anschaue (und mich nicht vergucke ;-)), dann wird eine eingehende Mail nur ein Mal gecheckt und erst dann, wenn das alles erledigt ist, unter Angabe der einzelnen Empfänger per (in meinem Fall) LMTP an Dovecot übergeben und diese Mails dann von Dovecot in die Mailboxen des/der eigentlichen & des bcc-Empfänger(s) abgelegt. Zusätzlich laufen dabei ggf. vorhandene Sieve-Filterungen, das wären bei Dir oben also 2) und 3).
Nach meinem Verständnis und wie gesagt auch anhand der Logs zu urteilen, ist in dieser späten Phase der Postfix-Verarbeitung (qmgr) kein Milter/Rspamd mehr beteiligt, nach Übergabe an Dovecot dann sowieso nicht mehr.
Das Problem mehrfacher Mails in den Ordnern aus 2) und 3) entsteht wenn, dann m. E. erst am Ende der Verarbeitungskette:
Da die Mails nämlich erst _nach_ Rspamd dupliziert werden, haben alle gleichermaßen ggf. Spam-Tags etc. bekommen. Und damit dürftest Du die dann wohl tatsächlich doppelt in den Spam-/Banned-Ordnern drin haben. Das sollte man jedoch mit der Sieve-Extension 'duplicate' von Dovecot-Pigeonhole klären können.
Viele Grüße Markus
Wow, dass ist ja mal eine Antwort!
Vielen Dank Markus, für deine ausführliche Analyse und du hast Recht, was rspamd betrifft und das ein Mail nur 1 x gecheckt wird.
Und die Vermehrung der Mails im spam- oder banned-Postfach ist natürlich meinem globalem Sievescript geschuldet.
Wenn das spam an 3 Empfänger gerichtet ist, dann landen 4 Mails im spam-Postfach (die 3 Empfänger und das vom archivpostfach, welches ja mit recipient_bcc_maps reinkommt.
*Vielleicht hat irgendwer noch eine Idee, wie ich die Vermehrung gleich hier in meinem folgenden Script eliminieren könnte. * require "envelope"; # Mails, welche alle flags (bad attachment und spam) haben if allof (header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"], header :contains "X-Spam" "Yes", not envelope "To" "banned@meinedomain.at", not envelope "To" "spam@meinedomain.at") { redirect "spam@meinedomain.at"; discard; stop; } # Mails, welche nur das spam flag haben elsif allof (header :contains "X-Spam" "Yes", not header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"], not envelope "To" "spam@meinedomain.at") { redirect "spam@meinedomain.at"; discard; stop; } # Mails, welche nur das bad attachment flag haben elsif allof (header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"], not header :contains "X-Spam" "Yes", not envelope "To" "banned@meinedomain.at") { redirect "banned@meinedomain.at"; discard; stop; }
Sieve-Extension "duplicate" kenne ich (noch) nicht, habt ihr hiermit gute Erfahrungen?
PS: Bitte um Entschuldigung an die Liste, dass jetzt ein Postfix-Dovecot-Sieve-Post aus der ursprünglichen Nachricht geworden ist, aber eine neue Fragestellung an dovecot@listen.jpberlin.de war mir jetzt doch zu umständlich.
vg, Andi
Am 18.10.2021 um 20:38 schrieb Markus Winkler:
Hallo Andi,
On 18.10.21 17:26, Andreas Wass - Glas Gasperlmair wrote:
möchten in naher Zukunft auf Postfix mit Dovecot und rspamd (zur Zeit amavisd) umsteigen.
1.) Alle eingehenden und ausgehenden Mails sollten zusätzlich mit postfix durch recipient_bcc_maps und sender_bcc_maps an die Archivpostfächer archiveingang@meinedomain.at und archivausgang@meinedomain.at weitergeleitet.
2. Soll ein globales Sieve-Script alle Mails, welche header :contains "X-Spam" "Yes" haben in einen globalen Spam-Ordner redirecten
3.) alle Mails welche header :contains "X-Spamd-Result" ["FILENAME_BLACKLISTED", "MIME_BAD_ATTACHMENT", "MIME_BAD_EXTENSION"] haben in einen globalen Banned-Ordner redirecten.
Das Problem dabei ist, dass auch alle Mails durch recipient_bcc_maps und sender_bcc_maps durch die Prüfung von rspamd geschickt werden und dann natürlich doppelt in den spam und banned ordner landen und die Filterung im Sievescript unnötig erschwert wird.
bist Du sicher, dass das so ist und die Mails x-fach durch Rspamd laufen? Hast Du das praktisch schon so getestet und gesehen, oder sind das momentan Vorüberlegung für Dein zukünftiges Setup?
Denn wenn ich mir das mal schnell im Log anschaue (und mich nicht vergucke ;-)), dann wird eine eingehende Mail nur ein Mal gecheckt und erst dann, wenn das alles erledigt ist, unter Angabe der einzelnen Empfänger per (in meinem Fall) LMTP an Dovecot übergeben und diese Mails dann von Dovecot in die Mailboxen des/der eigentlichen & des bcc-Empfänger(s) abgelegt. Zusätzlich laufen dabei ggf. vorhandene Sieve-Filterungen, das wären bei Dir oben also 2) und 3).
Nach meinem Verständnis und wie gesagt auch anhand der Logs zu urteilen, ist in dieser späten Phase der Postfix-Verarbeitung (qmgr) kein Milter/Rspamd mehr beteiligt, nach Übergabe an Dovecot dann sowieso nicht mehr.
Das Problem mehrfacher Mails in den Ordnern aus 2) und 3) entsteht wenn, dann m. E. erst am Ende der Verarbeitungskette:
Da die Mails nämlich erst _nach_ Rspamd dupliziert werden, haben alle gleichermaßen ggf. Spam-Tags etc. bekommen. Und damit dürftest Du die dann wohl tatsächlich doppelt in den Spam-/Banned-Ordnern drin haben. Das sollte man jedoch mit der Sieve-Extension 'duplicate' von Dovecot-Pigeonhole klären können.
Viele Grüße Markus
Hallo Andi,
On 19.10.21 10:17, Andreas Wass - Glas Gasperlmair wrote:
Vielleicht hat irgendwer noch eine Idee, wie ich die Vermehrung gleich hier in meinem folgenden Script eliminieren könnte.
falls Du das mit der duplicate extension realisieren möchtest:
M. W. ist diese per default verfügbar, es kann aber auch nicht schaden, sie in 90-sieve.conf
plugin { [...] sieve_extensions = +duplicate [...] }
zu aktivieren.
In (D)einem Script kann dann etwas in der Art stehen:
require "duplicate"; if duplicate { discard; stop; }
Hier noch Links zu Config-Optionen der Extension aus der Dovecot-Doku:
https://doc.dovecot.org/settings/pigeonhole-ext/duplicate/ https://wiki2.dovecot.org/Pigeonhole/Sieve/Extensions/Duplicate
HTH und viele Grüße Markus
Vielen Dank, Markus!
Mit duplicate läuft jetzt alles so wie ich mir das vorgestellt habe.
vg, Andi
Am 19.10.2021 um 20:40 schrieb Markus Winkler:
Hallo Andi,
On 19.10.21 10:17, Andreas Wass - Glas Gasperlmair wrote:
Vielleicht hat irgendwer noch eine Idee, wie ich die Vermehrung gleich hier in meinem folgenden Script eliminieren könnte.
falls Du das mit der duplicate extension realisieren möchtest:
M. W. ist diese per default verfügbar, es kann aber auch nicht schaden, sie in 90-sieve.conf
plugin { [...] sieve_extensions = +duplicate [...] }
zu aktivieren.
In (D)einem Script kann dann etwas in der Art stehen:
require "duplicate"; if duplicate { discard; stop; }
Hier noch Links zu Config-Optionen der Extension aus der Dovecot-Doku:
https://doc.dovecot.org/settings/pigeonhole-ext/duplicate/ https://wiki2.dovecot.org/Pigeonhole/Sieve/Extensions/Duplicate
HTH und viele Grüße Markus
On 21.10.21 07:44, Andreas Wass - Glas Gasperlmair wrote:
Mit duplicate läuft jetzt alles so wie ich mir das vorgestellt habe.
Das ist schön zu hören - vielen Dank fürs Feedback. :)
VG, Markus
participants (3)
-
Andreas Wass - Glas Gasperlmair
-
Markus Winkler
-
Robert Schetterer