SPAM-Meldungen an unterschiedliche Empfänger
Hi Folks, wieder mal 'ne Postfix/Cyrus/Amavis/Spamassassin Frage. Das Herausfiltern von SPAM-Mails klappt wunderbar. Allerdings habe ich jetzt das Problem, das ALLE SPAM-Meldungen an einen Empfänger gehen. Ich möchte aber, das SPAM-Meldungen die für Addresse A,B,F generiert werden an USER X , SPAM-Meldungen, welche die Addressen K.L.V betreffen, an User Y gehen. Also SPAM wird für alle Eingangsaddressen (A,B,F,K,L,V) heraus gefiltert. Es werden die entsprechenden SPAM-Meldungen generiert. Diese werden an den User "virusalert" gemeldet. Aber hinter "virusalert" verbirgt sich ja nur EIN Nutzer , der ALLE Meldungen bekommt (bei Bedarf auch mehrere Nutzer, die aber dann eben ALLE Meldungen erhalten) . Ich möchte statt desssen, dass diese Meldungen noch mal gefiltert (aufgeteilt) werden an Hand der betroffenen Eingangsaddressen. Soweit alles klar ? ;-) Kann mir jemand einen Tipp geben, wo ich da ansetzen kann/muss. Sieve? Procmail? - bisher damit noch nie etwas gemacht :-( Was bietet sich an? Thanks Timothy
Timothy Kesten wrote:
Hi Folks,
wieder mal 'ne Postfix/Cyrus/Amavis/Spamassassin Frage. Das Herausfiltern von SPAM-Mails klappt wunderbar. Allerdings habe ich jetzt das Problem, das ALLE SPAM-Meldungen an einen Empfänger gehen. Ich möchte aber, das SPAM-Meldungen die für Addresse A,B,F generiert werden an USER X , SPAM-Meldungen, welche die Addressen K.L.V betreffen, an User Y gehen. Also SPAM wird für alle Eingangsaddressen (A,B,F,K,L,V) heraus gefiltert. Es werden die entsprechenden SPAM-Meldungen generiert. Diese werden an den User "virusalert" gemeldet. Aber hinter "virusalert" verbirgt sich ja nur EIN Nutzer , der ALLE Meldungen bekommt (bei Bedarf auch mehrere Nutzer, die aber dann eben ALLE Meldungen erhalten) . Ich möchte statt desssen, dass diese Meldungen noch mal gefiltert (aufgeteilt) werden an Hand der betroffenen Eingangsaddressen. Soweit alles klar ? ;-)
Kann mir jemand einen Tipp geben, wo ich da ansetzen kann/muss. Sieve? Procmail? - bisher damit noch nie etwas gemacht :-( Was bietet sich an?
Auszug aus meiner Doku: #advanced example, using a hash lookup table: #$virus_admin = { # 'baduser@sub1.example.com' => 'HisBoss@sub1.example.com', # '.sub1.example.com' => 'virusalert@sub1.example.com', # '.sub2.example.com' => '', # don't send admin notifications # 'a.sub3.example.com' => 'abuse@sub3.example.com', # '.sub3.example.com' => 'virusalert@sub3.example.com', # '.example.com' => 'noc@example.com', # catchall for our virus senders # '.' => 'virusalert@hq.example.com', # catchall for the rest #}; Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Am Montag 09 Oktober 2006 11:43 schrieb Sandy Drobic:
Auszug aus meiner Doku: So 'ne Doku hätte ich auch gern ;-) Aber mal im Ernst - irgendwie klappt das bei mir nicht. Habe auch wieder mal Verständnisprobleme.
Habe jetzt in amavisd.conf eingetragen: @virus_admin_maps = ( { '.goodlack.de' => 'goodlack@jacmelaw.local' }, 'virusalert@jacmelaw.local'); # catchall for the rest D.h. Mails , die an blabla@goodlack,de ankommen (und SPAM sind) sollen gefiltert werden (klappt auch), aber die Meldung bekommt immer noch virusalert@jacmelaw.local, statt goodlack@jacmelaw.local (dieser user existiert). Alles andere (z.B. suselst@gmx.de) soll, falls SPAM, an virusalert@jacmelaw.local gemeldet werden (klappt auch). Syntaxfehler? Kann mir jemand (Sandy?) weiterhelfen? Timothy
Timothy Kesten wrote:
Am Montag 09 Oktober 2006 11:43 schrieb Sandy Drobic:
Auszug aus meiner Doku: So 'ne Doku hätte ich auch gern ;-)
Müsstest du in deiner sample.conf oder ähnlich haben.
Aber mal im Ernst - irgendwie klappt das bei mir nicht. Habe auch wieder mal Verständnisprobleme.
Habe jetzt in amavisd.conf eingetragen: @virus_admin_maps = ( { '.goodlack.de' => 'goodlack@jacmelaw.local' }, 'virusalert@jacmelaw.local'); # catchall for the rest
$virus_admin = { '.goodlack.de' => 'goodlack@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'}; $virus_admin wird zugewiesen in Abhängigkeit von dem Key, hier bei .goodlack.de ist $virus_admin = goodlack@jacmelaw.local, für alles andere dann virusalert@jacmelaw.local. Vielleicht hilft es, amavisd.conf als Perl-Script zu betrachten und die Syntax von Hashes in Perl zu kennen. @virus_admin_maps wäre ein Array.
D.h. Mails , die an blabla@goodlack,de ankommen (und SPAM sind) sollen gefiltert werden (klappt auch), aber die Meldung bekommt immer noch virusalert@jacmelaw.local, statt goodlack@jacmelaw.local (dieser user existiert). Alles andere (z.B. suselst@gmx.de) soll, falls SPAM, an virusalert@jacmelaw.local gemeldet werden (klappt auch). Syntaxfehler?
Yepp. Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Am Montag 09 Oktober 2006 21:37 schrieb Sandy Drobic:
Timothy Kesten wrote:
Am Montag 09 Oktober 2006 11:43 schrieb Sandy Drobic:
Auszug aus meiner Doku:
So 'ne Doku hätte ich auch gern ;-)
Müsstest du in deiner sample.conf oder ähnlich haben.
Hab' ich ja - hast Du das ;-) nicht gesehen?
$virus_admin = { '.goodlack.de' => 'goodlack@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'};
$virus_admin wird zugewiesen in Abhängigkeit von dem Key, hier bei .goodlack.de ist $virus_admin = goodlack@jacmelaw.local, für alles andere dann virusalert@jacmelaw.local.
Vielleicht hilft es, amavisd.conf als Perl-Script zu betrachten und die Syntax von Hashes in Perl zu kennen. @virus_admin_maps wäre ein Array. Mir ist schon klar, dass diese .conf mit Perl-Syntax zu lesen ist. Aber ich dachte, @virus_admin_maps (ein Array) wird benutzt, um an Hand der Elemente des Array, die dann ja wieder Hashes sind, den entsprechenden Empfänger zu ermitteln. So, wie Du es schreibst, weisst du ja einem Skalar... , ja was eigentlich zu?
Syntaxfehler?
Yepp. Hoffen wir (ich) mal, dass du Recht hast. Hab's mal so eingetragen. Jetzt warte ich auf SPAM ;-)
Timothy
Hallo, Am Mon, 09 Okt 2006, Timothy Kesten schrieb:
Am Montag 09 Oktober 2006 21:37 schrieb Sandy Drobic:
$virus_admin = { '.goodlack.de' => 'goodlack@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'};
[..] Mir ist schon klar, dass diese .conf mit Perl-Syntax zu lesen ist. Aber ich dachte, @virus_admin_maps (ein Array) wird benutzt, um an Hand der Elemente des Array, die dann ja wieder Hashes sind, den entsprechenden Empfänger zu ermitteln. So, wie Du es schreibst, weisst du ja einem Skalar... , ja was eigentlich zu?
Das $foo = { key1 => wert1, key2 => wert2, ... }; ist die Initialisierungssyntax einer Referenz auf ein anonymes Hash. Ein explizites Hash wäre: %foo = ( key1 => wert1, key2 => wert2, ... ); -dnh --
Blame directed at the wrong vendor tends to get reclassified as whining. No worries, I'm good at that too. -- Chris Hacking and Jay Mottern in asr
Am Dienstag 10 Oktober 2006 00:50 schrieb David Haller:
So, wie Du es schreibst, weisst du ja einem Skalar... , ja was eigentlich zu?
Das
$foo = { key1 => wert1, key2 => wert2, ... };
ist die Initialisierungssyntax einer Referenz auf ein anonymes Hash. Ein explizites Hash wäre:
%foo = ( key1 => wert1, key2 => wert2, ... );
Besten Dank für die Info. Also syntaktisch eine gültige Anweisung - nur leider ohne die gewünschte Wirkung. ALLE SPAM-Meldungen landen trotzdem bei virusalert. Und keine bei goodlack@jacmelaw.local :-( Weiter Hinweise ? Timothy
Timothy Kesten wrote:
Am Dienstag 10 Oktober 2006 00:50 schrieb David Haller:
So, wie Du es schreibst, weisst du ja einem Skalar... , ja was eigentlich zu? Das
$foo = { key1 => wert1, key2 => wert2, ... };
ist die Initialisierungssyntax einer Referenz auf ein anonymes Hash. Ein explizites Hash wäre:
%foo = ( key1 => wert1, key2 => wert2, ... );
Besten Dank für die Info. Also syntaktisch eine gültige Anweisung - nur leider ohne die gewünschte Wirkung. ALLE SPAM-Meldungen landen trotzdem bei virusalert. Und keine bei goodlack@jacmelaw.local :-(
Wie sieht denn jetzt deine Konfig aus? Und was sagt das Log von Amavis? Notfalls schraube mal den Loglevel etwas hoch und teste es noch einmal. Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Hi, da bin ich wieder ;-) Nochmals zur genauen Erklärung. Per Fetchmail werden diverse POP3 Mailboxen ( @goodlack.de , @gmx.de usw) abgerufen. Dann Postfix/Amavis/Cyrus etc. verarbeitet. SPAMs werden ausgefiltert. Die Meldungen gehen ALLE (leider) an virusalert@jacmelaw.local. Nun sollen aber SPAM-Meldungen die @goodlack.de betreffen an helleralert@jacmelaw.local gehen. Und das funzt nicht :-( Am Dienstag 10 Oktober 2006 07:33 schrieb Sandy Drobic:
Wie sieht denn jetzt deine Konfig aus? $mydomain = 'jacmelaw.local';
$virus_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'}; $spam_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'}; In aliases wird gemappt virusalert root root tk helleralert goodlack sowhl goodlack als auch tk existieren als user mit Mailboxen auf main.jacmelaw.local tk erhält (z.Zt.) ALLE SPAM-Meldungen
Und was sagt das Log von Amavis? Hier mal eine SPAM-Mail. Die ging ursprünglich an info<at>goodlack.de Wird abgeholt von user _hellerinfo. Soll weitergeleitet werden an
helleinfo@jacmelaw.local
und
goodlack@jacmelaw.local
beide user existieren mit Mailboxen im System (No-Spam kommt entsprechend an)
Die SPAM-Meldung aber bekommt virusalert respektive tk.
Könnt Ihr was aus den logs lesen?
Oct 10 15:30:24 main.jacmelaw.local /usr/sbin/amavisd[12021]: (12021-02)
Checking: 36aQB1nrjO0s <20lsherwoo@jiaboo.com> ->
Notfalls schraube mal den Loglevel etwas hoch und teste es noch einmal. Loglevel ist jetzt 5
Ich weiß erst einmal nicht weiter Timothy
Hallo, Am Die, 10 Okt 2006, Timothy Kesten schrieb:
Wie sieht denn jetzt deine Konfig aus? $mydomain = 'jacmelaw.local';
$virus_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'};
$spam_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', '.' => 'virusalert@jacmelaw.local'};
Wie sieht @virus_admin_maps aus? Und schau nochmal in die Beispiel-Config. Folgendes sollte klappen: %virus_admin = ( 'goodlack.de' => 'helleralert@jacmelaw.local', '.' => 'virusalert@jacmelaw.local' ); Oder: $virus_admin = 'virusalert@jacmelaw.local'; %virus_admin = ( 'goodlack.de' => 'helleralert@jacmelaw.local' ); Denn in @virus_admin_maps ist per default: @virus_admin_maps = (\%virus_admin, \$virus_admin); Siehe auch README.lookups. HTH, -dnh --
Sinnvollerweise habe ich Sicherungen von meinen Systemen. Bei IBM unabkömmlich. Steht ja auch in grossen Buchstaben drauf: [I]mmer [B]ackup [M]achen ;-) -- Gerald Schnabel in dchlf
Nachtrag:
ALLE erkannten SPAM-Mail hinterlassen in amavisd.log die Meldung
Admin notifications to
Hi Folks, so - jetzt klappt es. Knackpunkt war der eigentliche "Empfänger" !!!! $virus_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', <== geht nicht 'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local', <=== geht !!! '.' => 'virusalert@jacmelaw.local'}; $spam_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', <== geht nicht 'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local', <=== geht !!! '.' => 'virusalert@jacmelaw.local'}; mit '.goodlack.de' => 'helleralert@jacmelaw.local', klappt es nicht. Es werden nur lokale Empfänger ausgewertet. Also 'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local', und schon klappt's mit dem Nachbarn ;-) Alle von @goodlack.de abgeholten Mails werden lokal sowohl an die einzelnen Empfänger (bla1@jacmelaw.local, bla2@jacmelaw.local) als auch an goodlack@jacmelaw.local zugestellt. Und nach diesem goodlack@jacmelaw.local muss gefiltert (sortiert) werden. Und nicht nach dem "externen" @goodlack.de Trotzdem vielen Dank für die zahlreichen Tipps und Hinweise. Ohne diese hätte ich es nicht geschafft. Einen schönen Abend noch Timothy
Timothy Kesten wrote:
Hi Folks,
so - jetzt klappt es. Knackpunkt war der eigentliche "Empfänger" !!!!
$virus_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', <== geht nicht 'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local', <=== geht !!! '.' => 'virusalert@jacmelaw.local'};
$spam_admin = { '.goodlack.de' => 'helleralert@jacmelaw.local', <== geht nicht 'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local', <=== geht !!! '.' => 'virusalert@jacmelaw.local'};
mit
'.goodlack.de' => 'helleralert@jacmelaw.local',
klappt es nicht. Es werden nur lokale Empfänger ausgewertet.
Also
'goodlack@jacmelaw.local' => 'helleralert@jacmelaw.local',
und schon klappt's mit dem Nachbarn ;-)
Alle von @goodlack.de abgeholten Mails werden lokal sowohl an die einzelnen Empfänger (bla1@jacmelaw.local, bla2@jacmelaw.local) als auch an goodlack@jacmelaw.local zugestellt. Und nach diesem goodlack@jacmelaw.local muss gefiltert (sortiert) werden. Und nicht nach dem "externen" @goodlack.de
Seufz, habe schon lange nicht mehr mit fetchmail basteln müssen. Jetzt erinnere ich mich, dass du erwähnt hast, dass Fetchmail seine Finger im Spiel hast. (^-^) Ende gut, alles gut. ;) Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
participants (3)
-
David Haller
-
Sandy Drobic
-
Timothy Kesten