Jump to content
Froxlor Forum
  • 0

Dovecot und Sieve


jogr

Question

Hallo zusammen,

 

nachdem Dovecot nun zufriedenstellend und zuverl?ssig l?uft, wollte ich ihn um Sieve erweitern um mit amaivs erkannte Spam und Virenmails in ein anderes Verzeichnis zu verschieben.

Ich habe die dovecot.conf um folgendes erg?nzt:

protocols = imap pop3 imaps pop3s lda managesieve
protocol lda {
mail_plugins = quota sieve

plugin {
   	quota = maildir:User Quota
   	sieve = ~/.dovecot.sieve
   	sieve_dir = ~/sieve
   	sieve_global_path = /var/kunden/sieve/default.sieve
   	sieve_global_dir = /var/kunden/sieve/global

Also nur managesive in protocols und sieve bzw. die sieve Pfade hinzugef?gt.

Mit dem Thunderbird Addon Sieve kann ich ?ber managesieve auch auf den Server zugreifen und Konfigurationsdateien anlegen, aber leider scheinen diese nicht abgearbeitet zu werden, denn eine Regel wie

require "fileinto";
if header :contains "subject" "test" {
 fileinto "Testordner";
}

greift nicht.

Auch ein

fileinto "INBOX.Testordner";

half nicht weiter.

Hat jemand eine Idee, woran dies liegen k?nnte?

Eine weiter Frage h?tte ich noch. Werden die globalen Regeln durch die des Users ersetzt, oder umgekehrt.

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

Das TB Plugin funktioniert auch nicht, daran bin ich auch schon verzweifelt...liegt aber nicht an der Mailserver-Config.

 

als plugin-direktive sieht das bei mir so aus (Gentoo):

 

plugin {
 sieve=~/.dovecot.sieve
 sieve_dir=~/sieve
 sieve_global_path = /etc/dovecot/sieve/global-spam.sieve
}

 

inhalt der global-spam.sieve bei mir ist:

 

require "fileinto";

if header :contains "X-Spam-Flag" "YES" {
       fileinto "INBOX.Spam";
}

 

und zus?tzlich in der dovecot.conf noch:

 

protocol managesieve {
 listen = *:2000

 login_executable = /usr/libexec/dovecot/managesieve-login
 mail_executable = /usr/libexec/dovecot/managesieve

 managesieve_logout_format = bytes ( in=%i : out=%o )
 mail_debug = yes
}

Link to comment
Share on other sites

Das scheint bei mir so nicht zu funktionieren.

Daraufhin habe ich die config ein wenig ge?ndert (die vollst?ndige findet sich in: http://forum.froxlor...2513#entry2513)

protocol imap {
   	mail_plugins = quota imap_quota autocreate zlib mail_log
}

 

Zu Testzwecken habe ich ebenso den sieve-Filter ge?ndert, damit eine email, die nur test im Betreff hat, gefiltert wird (ist einfacher, als auf spam zu warten)

/etc # cat /etc/dovecot/sieve/global-spam.sieve
require "fileinto";

if header :contains "X-Spam-Flag" "YES" {
   	fileinto "INBOX.Spam";
} elsif header :contains "subject" "test" {
   	fileinto "INBOX.Testordner";
} else {
   	keep;
}

 

Damit sollte dovecot, wenn ich das Wiki richtig lese, ein Verzeichnis, welches nicht existiert, anlegen k?nnen.

Etwas verunsichert bin ich allerdings ?ber sieve. Hast Du sieve per Hand den Quellen des Wiki installiert, oder per emerge

*  mail-filter/libsieve
 	Latest version available: 2.2.5
 	Latest version installed: 2.2.5
 	Size of files: 560 kB
 	Homepage:  	http://libsieve.sourceforge.net/
 	Description:   A library for parsing, sorting and filtering your mail.
 	License:   	MIT LGPL-2

?

Link to comment
Share on other sites

Etwas verunsichert bin ich allerdings ?ber sieve. Hast Du sieve per Hand den Quellen des Wiki installiert, oder per emerge

*  mail-filter/libsieve
 	Latest version available: 2.2.5
 	Latest version installed: 2.2.5
 	Size of files: 560 kB
 	Homepage:  	http://libsieve.sourceforge.net/
 	Description:   A library for parsing, sorting and filtering your mail.
 	License:   	MIT LGPL-2

?

[/code]

 

keine extra Pakete, nur dovecot mit USE="sieve managesieve" kompiliert

Link to comment
Share on other sites

Danke.

 

Sieve scheint auch zu funktionieren, aber irgendwie nicht f?r virtuelle Benutzer. Schicke ich eine mail an einen Benutzer mit login-Shell, funktioniert sieve korrekt.

Oct 13 15:51:18 myserver postfix/smtpd[21639]: connect from mail-fx0-f45.google.com[209.85.161.45]
Oct 13 15:51:18 myserver postfix/smtpd[21639]: 65B792A8025: client=mail-fx0-f45.google.com[209.85.161.45]
Oct 13 15:51:18 myserver postfix/cleanup[21649]: 65B792A8025: message-id=<AANLkTino5HjG6a02v7Q_9Lvh9=0U3VXOT91Yma6TWx2T@mail.gmail.com>
Oct 13 15:51:18 myserver postfix/qmgr[23378]: 65B792A8025: from=<ich-bei-googlemail@googlemail.com>, size=2130, nrcpt=1 (queue active)
Oct 13 15:51:22 myserver postfix/smtpd[21666]: connect from localhost[127.0.0.1]
Oct 13 15:51:22 myserver postfix/smtpd[21666]: 79D9E2A805C: client=localhost[127.0.0.1]
Oct 13 15:51:22 myserver postfix/cleanup[21649]: 79D9E2A805C: message-id=<AANLkTino5HjG6a02v7Q_9Lvh9=0U3VXOT91Yma6TWx2T@mail.gmail.com>
Oct 13 15:51:22 myserver postfix/qmgr[23378]: 79D9E2A805C: from=<ich-bei-googlemail@googlemail.com>, size=3104, nrcpt=1 (queue active)
Oct 13 15:51:22 myserver postfix/lmtp[21651]: 65B792A8025: to=<shell_user@myserver.de>, relay=127.0.0.1[127.0.0.1]:10024, delay=4.1, delays=0.04/0/0/4.1, dsn=2.0.0, status=sent (250 2.0.0 Ok, id=19897-01, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 79D9E2A805C)
Oct 13 15:51:22 myserver postfix/qmgr[23378]: 65B792A8025: removed
Oct 13 15:51:22 myserver dovecot: deliver(shell_user): sieve: msgid=<AANLkTino5HjG6a02v7Q_9Lvh9=0U3VXOT91Yma6TWx2T@mail.gmail.com>: stored mail into mailbox 'INBOX.Testordner'
Oct 13 15:51:22 myserver postfix/local[21667]: 79D9E2A805C: to=<shell_user@myserver.de>, relay=local, delay=0.05, delays=0.01/0/0/0.03, dsn=2.0.0, status=sent (delivered to command: /usr/libexec/dovecot/deliver)
Oct 13 15:51:22 myserver postfix/qmgr[23378]: 79D9E2A805C: removed
Oct 13 15:51:48 myserver postfix/smtpd[21639]: disconnect from mail-fx0-f45.google.com[209.85.161.45]
Oct 13 15:51:54 myserver postfix/smtpd[21639]: connect from mail-fx0-f47.google.com[209.85.161.47]
Oct 13 15:51:54 myserver postfix/smtpd[21639]: A509A2A8025: client=mail-fx0-f47.google.com[209.85.161.47]
Oct 13 15:51:54 myserver postfix/cleanup[21649]: A509A2A8025: message-id=<AANLkTinjUxCVEZ=rqNVUZdF6-zQxS4sP_TvJYwhOVNk1@mail.gmail.com>
Oct 13 15:51:54 myserver postfix/qmgr[23378]: A509A2A8025: from=<ich-bei-googlemail@googlemail.com>, size=2111, nrcpt=1 (queue active)
Oct 13 15:52:01 myserver postfix/smtpd[21699]: connect from localhost[127.0.0.1]
Oct 13 15:52:01 myserver postfix/smtpd[21699]: B7F182A805C: client=localhost[127.0.0.1]
Oct 13 15:52:01 myserver postfix/cleanup[21649]: B7F182A805C: message-id=<AANLkTinjUxCVEZ=rqNVUZdF6-zQxS4sP_TvJYwhOVNk1@mail.gmail.com>
Oct 13 15:52:01 myserver postfix/qmgr[23378]: B7F182A805C: from=<ich-bei-googlemail@googlemail.com>, size=3073, nrcpt=1 (queue active)
Oct 13 15:52:01 myserver postfix/smtpd[21699]: disconnect from localhost[127.0.0.1]
Oct 13 15:52:01 myserver postfix/lmtp[21651]: A509A2A8025: to=<qwer@customer_domain.de>, relay=127.0.0.1[127.0.0.1]:10024, delay=7.1, delays=0.04/0/0/7.1, dsn=2.0.0, status=sent (250 2.0.0 Ok, id=19898-04, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as B7F182A805C)
Oct 13 15:52:01 myserver postfix/qmgr[23378]: A509A2A8025: removed
Oct 13 15:52:01 myserver postfix/virtual[21700]: B7F182A805C: to=<qwer@customer_domain.de>, relay=virtual, delay=0.14, delays=0.01/0/0/0.12, dsn=2.0.0, status=sent (delivered to maildir)
Oct 13 15:52:01 myserver postfix/qmgr[23378]: B7F182A805C: removed

Link to comment
Share on other sites

Manchmal hilft es, eine Logdatei nochmal gesehen zu haben, wenn man sie gepostet hat.

Da der Shell Benutzer eine Zustellung per dovecot, der virtuelle Benutzer aber eine Zustellung per postfix/virtual hat(te), habe ich die main.cf von postfix nochmal durchforstet und einen (weiteren) virtual_transport Eintrag gefunden. Und dieser lautete

virtual_transport = virtual

Den habe ich gel?scht und jetzt liefert dovecot aus und sortiert flei?ig mit sieve ein.

 

Danke f?r Deine Geduld d00p.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...