Hi! Ich habe mir Cyrus aufgesetzt und möchte nun gerne mit Hilfe von Procmail ankommende Mails, z.B. die dieser ML automatisch einsortieren lassen. Leider funtkioniert das nicht "out-of-the-box". SuSE legt keine procmailrc an, weder in $HOME noch in /etc. Also habe ich die von Hand angelegt. Als Vorlage diente mir das Beispiel aus /usr/share/doc/... Leider funktioniert es immer noch nicht richtig. Ich stehe ein wenig auf dem Schlauch. Wo muss ich drehen, damit procmail meine Mails sortiert. Meine procmailrc habe ich einfach mal angehängt. Danke für Eure Hilfe! MfG Marco linux:/etc # l procmailrc -rw-rw---- 1 root root 398 Jan 9 12:50 procmailrc Meine procmailrc: # Please check if all the paths in PATH are reachable, remove the ones that # are not. PATH=$HOME/bin:/usr/bin:/usr/ucb:/bin:/usr/local/bin:. MAILDIR=/var/spool/imap/user/splash DEFAULT=$MAILDIR LOGFILE=$HOME/ LOCKFILE=$HOME/.lockmail :0 * ^From.*suse-linux@suse.com suse/linux # Anything that has not been delivered by now will go to $DEFAULT # using LOCKFILE=$DEFAULT$LOCKEXT
Marco Röben wrote:
Hi!
Ich habe mir Cyrus aufgesetzt und möchte nun gerne mit Hilfe von Procmail ankommende Mails, z.B. die dieser ML automatisch einsortieren lassen. Leider funtkioniert das nicht "out-of-the-box". SuSE legt keine procmailrc an, weder in $HOME noch in /etc. Also habe ich die von Hand angelegt. Als Vorlage diente mir das Beispiel aus /usr/share/doc/...
Leider funktioniert es immer noch nicht richtig. Ich stehe ein wenig auf dem Schlauch. Wo muss ich drehen, damit procmail meine Mails sortiert. Meine procmailrc habe ich einfach mal angehängt.
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern. Wenn du Procmail als MDA einsetzen willst, dann musst du das auch in Postfix so konfigurieren. /etc/postfix/main.cf: mailbox_transport = procmail
linux:/etc # l procmailrc -rw-rw---- 1 root root 398 Jan 9 12:50 procmailrc
Meine procmailrc:
# Please check if all the paths in PATH are reachable, remove the ones that # are not.
PATH=$HOME/bin:/usr/bin:/usr/ucb:/bin:/usr/local/bin:. MAILDIR=/var/spool/imap/user/splash DEFAULT=$MAILDIR LOGFILE=$HOME/ LOCKFILE=$HOME/.lockmail
:0 * ^From.*suse-linux@suse.com suse/linux
# Anything that has not been delivered by now will go to $DEFAULT # using LOCKFILE=$DEFAULT$LOCKEXT
Da fehlen ohnehin noch einige Einstellungen. Wenn cyrus nicht mehr direkt als mail delivery agent aufgerufen wird, musst du das in procmail machen. AFAIK fehlt auch noch das Entfernen des "From:"-Headers, da cyrus sonst Probleme macht. http://www.postfix-howto.de/procmail_conf.html Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Sandy Drobic schrieb:
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern.
Cool! Danke, dass wusste ich noch gar nicht. Bin dabei mir das anzuschauen. Leider habe ich keine der Weboberflächen (websieve, etc.) zum laufen bekommen. Bin ja ein fauler Mensch. Naja, ich sehe gerade, dass die Syntax wirklich einfach ist und mit sieveshell sind die Scripte auch schnell aktiviert/installiert. Jetzt muss mein Script nur noch funktionieren. Kennst Du Dich damit aus. Würde dieses Sieve-Script die Mails der SuSE-ML ordentlich wegsortieren? require "fileinto"; if address :contains ["to","from","cc","bcc"] "suse-linux@suse.com" { fileinto "suse"; } elsif address :contains ["to","from","cc","bcc"] "suse-multimedia@suse.com" { fileinto "suse.multimedia"; } elsif address :contains ["to","from","cc","bcc"] "suse-laptop@suse.com" { fileinto "suse.laptop"; } else { keep; stop; }
Marco Röben wrote:
Sandy Drobic schrieb:
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern.
Cool! Danke, dass wusste ich noch gar nicht. Bin dabei mir das anzuschauen. Leider habe ich keine der Weboberflächen (websieve, etc.) zum laufen bekommen. Bin ja ein fauler Mensch. Naja, ich sehe gerade, dass die Syntax wirklich einfach ist und mit sieveshell sind die Scripte auch schnell aktiviert/installiert. Jetzt muss mein Script nur noch funktionieren.
Es ist halt nur nicht eine einzige zentrale Filterdatei. Vorteil ist, dass die Anwender ihre eigenen Scripte verwalten (und sich dabei in den Fuss schiessen können). Nachteil ist genau das gleiche. (^-^)
Kennst Du Dich damit aus. Würde dieses Sieve-Script die Mails der SuSE-ML ordentlich wegsortieren?
require "fileinto"; if address :contains ["to","from","cc","bcc"] "suse-linux@suse.com" { fileinto "suse"; } elsif address :contains ["to","from","cc","bcc"] "suse-multimedia@suse.com" { fileinto "suse.multimedia"; } elsif address :contains ["to","from","cc","bcc"] "suse-laptop@suse.com" { fileinto "suse.laptop"; } else { keep; stop; }
Würde wahrscheinlich schon passen, aber ich nehme lieber den Headereintrag der Mailingliste. Das ist eindeutiger. require "fileinto"; if header :is "X-Mailinglist" "suse-linux" { fileinto "INBOX.Mailinglists.suse-linux";} elsif header :is "X-Mailinglist" "suse-linux-e" { fileinto "INBOX.Mailinglists.suse-linux-e";} ... Bei Sievescripten braucht man auch nicht so heftig nachschauen, ob man auch wirklich alle Fälle berücksichtigt hat. Wenn keine Regel greift, wird die Mail einfach im zentralen Eingang gelassen und halt NICHT gefiltert. (^-^) Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Sandy Drobic schrieb:
Es ist halt nur nicht eine einzige zentrale Filterdatei. Vorteil ist, dass die Anwender ihre eigenen Scripte verwalten (und sich dabei in den Fuss schiessen können). Nachteil ist genau das gleiche. (^-^)
Da ich der einzige Anwender bin ist das eigentlich egal und wenn ich Mist baue kann ich (leider?) keinen dafür verwantwortlich machen. :-)
Würde wahrscheinlich schon passen, aber ich nehme lieber den Headereintrag der Mailingliste. Das ist eindeutiger.
Hab das jetzt auch geändert. Wusste nur so spontan nicht wie man auf Headereinträge verweist. Danke für das Beispiel!
Bei Sievescripten braucht man auch nicht so heftig nachschauen, ob man auch wirklich alle Fälle berücksichtigt hat. Wenn keine Regel greift, wird die Mail einfach im zentralen Eingang gelassen und halt NICHT gefiltert. (^-^)
Und ich finde die Syntax um einiges einfacher als die von procmail. Aber das ist wohl Ansichtssache. MfG und eine gute Nacht Marco
Am Montag, 9. Januar 2006 22:49 schrieb Marco Röben:
Sandy Drobic schrieb:
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern.
- kann man damit auch in maildir Verzeichnisse sortieren, so daß kmail das "mitbekommt"? - kann man auch beliebige Programme aufrufen (sprich: spamc)? Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
Hi Jürgen, Am Dienstag, 10. Januar 2006 08:40 schrieb Dr. Jürgen Vollmer:
Am Montag, 9. Januar 2006 22:49 schrieb Marco Röben:
Sandy Drobic schrieb:
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern.
- kann man damit auch in maildir Verzeichnisse sortieren, so daß kmail das "mitbekommt"? - kann man auch beliebige Programme aufrufen (sprich: spamc)?
imho nein, sieve ist teil von cyrus und filtert nur in imap ordner von cyrus. Sieve taugt imho auch wirklich nur dafür, wenn man externe Geschichten einbinden muss (pipes in externe Programme etc.) ist eine filterkette aus procmail _und_ sieve. das Mittel der Wahl. Gruss Falk
Falk Sauer wrote:
Hi Jürgen,
Am Dienstag, 10. Januar 2006 08:40 schrieb Dr. Jürgen Vollmer:
Am Montag, 9. Januar 2006 22:49 schrieb Marco Röben:
Sandy Drobic schrieb:
Cyrus bringt schon eine eigene Filtersprache namens SIEVE mit. Die Syntax ist sehr einfach und sieve ist per default auch aktiviert. Damit lassen sich Mails auch serverseitig bereits filtern.
- kann man damit auch in maildir Verzeichnisse sortieren, so daß kmail das "mitbekommt"? - kann man auch beliebige Programme aufrufen (sprich: spamc)?
imho nein, sieve ist teil von cyrus und filtert nur in imap ordner von cyrus.
Sehe ich auch so.
Sieve taugt imho auch wirklich nur dafür, wenn man externe Geschichten einbinden muss (pipes in externe Programme etc.) ist eine filterkette aus procmail _und_ sieve. das Mittel der Wahl.
Allein wegen der Wartbarkeit und Transparenz würde ich nicht beides gleichzeitig einsetzen. Soweit ich das überblicke kann SIEVE keine externen Programme einbinden. Wenn also so etwas erforderlich ist, dann sollte die Einbindung dieser Programme VOR Cyrus (und damit SIEVE) stattfinden, oder eben Procmail und Konsorten verwendet werden. Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Hi Sandy, Am Dienstag, 10. Januar 2006 10:28 schrieb Sandy Drobic:
Falk Sauer wrote:
Sieve taugt imho auch wirklich nur dafür, wenn man externe Geschichten einbinden muss (pipes in externe Programme etc.) ist eine filterkette aus procmail _und_ sieve. das Mittel der Wahl.
Allein wegen der Wartbarkeit und Transparenz würde ich nicht beides gleichzeitig einsetzen. Soweit ich das überblicke kann SIEVE keine externen Programme einbinden. Wenn also so etwas erforderlich ist, dann sollte die Einbindung dieser Programme VOR Cyrus (und damit SIEVE) stattfinden, oder eben Procmail und Konsorten verwendet werden.
Wartbarkeit war das Stichwort, wenn du was user-wartbares brauchst mit Oberfläche! dann kommst du an sieve kaum vorbei, wenn du dann noch unterschiedliche Programme brauchst die deinen Mailverkehr vorher mal durchschauen kommst du an procmail kaum vorbei (es sei denn du hast ein sehr inniges Verhältnis zu deinem MTA ;-) ) daher denke ich solange man es darauf beschränkt das der Admin procmail her nimmt und der user sieve ist das die flexibelste und bestmögliche Lösung. Gruss Falk
* Sandy Drobic wrote on Tue, Jan 10, 2006 at 10:28 +0100: [...]
Allein wegen der Wartbarkeit und Transparenz würde ich nicht beides gleichzeitig einsetzen. Soweit ich das überblicke kann SIEVE keine externen Programme einbinden.
Dachte, das ist ein Feature, damit "virutelle" Cyrus-Mailuser sich nicht gegenseitig fremde Mails "cat | mail" ausspionieren können? oki, Steffen -- Dieses Schreiben wurde maschinell erstellt, es trägt daher weder Unterschrift noch Siegel.
Steffen Dettmer wrote:
* Sandy Drobic wrote on Tue, Jan 10, 2006 at 10:28 +0100: [...]
Allein wegen der Wartbarkeit und Transparenz würde ich nicht beides gleichzeitig einsetzen. Soweit ich das überblicke kann SIEVE keine externen Programme einbinden.
Dachte, das ist ein Feature, damit "virutelle" Cyrus-Mailuser sich nicht gegenseitig fremde Mails "cat | mail" ausspionieren können?
Ich glaube nicht, dass Sicherheitsbedenken in dieser Hinsicht eine Rolle gespielt haben. (^-^) Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Am Montag, 9. Januar 2006 22:49 schrieb Marco Röben:
Kennst Du Dich damit aus. Würde dieses Sieve-Script die Mails der SuSE-ML ordentlich wegsortieren?
Ich würde a) die Header mit einbeziehen b) mich nicht auf .com verlassen, es gab zumindest in der Vergangenheit immer wieder mal an die .de Adressen Kleiner Auszug aus meinem sieve script (ja, ich filtere immer Header und Mail-Adresse, erstens um Headeränderungen nicht zur Katastrophe ausarten zu lassen und zweitens um die CC an mich gehenden Mails auch in den Listenordner reinzukriegen): require "fileinto"; if header :is "X-Spam-Flag" "YES" { fileinto "INBOX.Spam";} elsif header :is "X-Mailinglist" "suse-linux" { fileinto "INBOX.Linux.SuSE-Linux";} elsif address :contains :all ["to", "cc", "bcc"] "suse-linux@suse" { fileinto "INBOX.Linux.SuSE-Linux";} elsif header :is "X-Mailinglist" "suse-multimedia" { fileinto "INBOX.Linux.SuSE-Multimedia";} elsif address :contains :all ["to", "cc", "bcc"] "suse-multimedia@suse" { fileinto "INBOX.Linux.SuSE-Multimedia";} elsif header :is "X-Mailinglist" "suse-laptop" { fileinto "INBOX.Linux.SuSE-Laptop";} elsif address :contains :all ["to", "cc", "bcc"] "suse-laptop@suse" { fileinto "INBOX.Linux.SuSE-Laptop";} else { fileinto "INBOX.Manfred";} -- Machs gut | http://www.iivs.de/schwinde/buerger/tremmel/ | http://packman.links2linux.de/ Manfred | http://www.knightsoft-net.de
Manfred Tremmel schrieb:
Ich würde a) die Header mit einbeziehen b) mich nicht auf .com verlassen, es gab zumindest in der Vergangenheit immer wieder mal an die .de Adressen
Danke für die Anregung und für den Auszug aus Deinem sieve Script. Werde morgen mal weiter an meinem Script feilen. Ich bin begeistert von Sieve. Ist so schön einfach! :-) Wenn interesse besteht könnte ich für die FAQ eine kleine Anleitung zusammenschreiben. Für Procmail gibt es sowas ja schon. Bin zwar kein wirklicher Profi, aber für die Grundlagen sollte es mittlerweile reichen. :-) MfG Marco
Hallo Marco, hallo Leute, (ich bin gerade 200 Mails im Rückstand, deshalb antworte ich erst jetzt) Am Dienstag, 10. Januar 2006 22:52 schrieb Marco Röben: [...]
Ich bin begeistert von Sieve. Ist so schön einfach! :-)
Wenn interesse besteht könnte ich für die FAQ eine kleine Anleitung zusammenschreiben. Für Procmail gibt es sowas ja schon. Bin zwar kein wirklicher Profi, aber für die Grundlagen sollte es mittlerweile reichen. :-)
Gern - neue Texte sind bei der FAQ immer willkommen. Da ich in Kürze ein mv `whoami` /bed/ ausführen will, verweise ich Dich einfach auf 1.3. Wie kann ich mitmachen? http://suse-linux-faq.koehntopp.de/q/q-about-mitmachen.html Gruß Christian Boltz -- [...] dabei habe ich extra mutt benutzt! :-) Taugt wohl auch nichts, das Teil... *duck + renn* [Thomas Hertweck in suse-linux]
participants (7)
-
Christian Boltz
-
Dr. Jürgen Vollmer
-
Falk Sauer
-
Manfred Tremmel
-
Marco Röben
-
Sandy Drobic
-
Steffen Dettmer