Hi all,
I'm migrating my private mail server from Dovecot 1.0.10 to Dovecot
1.1.4 (both the latest package in Ubuntu Hardy and Intrepid, resp.).
I'm using Postfix with Postfixadmin virtual users , passing mail to
Dspam, which in turn passes email to the Dovecot LDA. The relevant
configuration section is attached below.
When running on the old version of Dovecot, the LDA correctly executed
either the user's personal sieverc script, or the global sieverc, as
expected.
However, after the upgrade to 1.1.4, Dovecot will not execute any
per-user Sieve scripts, although the configuration and file permissions
hasn't changed. I've added debug logging to Dovecot, and the relevant
portions of the log file are also attached below.
What am I missing here? Why can't cmusieve find the user's script? Did
the configuration for Sieve change? I've read and re-read the Dovecot
wiki page for Sieve, and I can't see why my configuration should be
causing any troubles.
All help or suggestions are greatly appreciated.
Thank you.
### dovecot.conf
protocols = imap imaps
disable_plaintext_auth = no
mail_debug = yes
log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot.log
mail_location = maildir:/srv/mail/%u/Maildir
first_valid_uid = 900
ssl_cert_file = /srv/ssl/dovecot.pem
ssl_key_file = /srv/ssl/leetcode.net.key
auth default {
mechanisms = plain login
passdb sql {
args = /srv/etc/dovecot/dovecot-mysql.conf
}
userdb sql {
args = /srv/etc/dovecot/dovecot-mysql.conf
}
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0600
user = vmail
}
client {
path = /var/spool/postfix/private/auth
mode = 0600
user = postfix
group = postfix
}
}
}
protocol lda {
log_path = /srv/mail/dovecot-deliver.log
auth_socket_path = /var/run/dovecot/auth-master
postmaster_address = postmaster at leetcode.net
mail_plugins = cmusieve
sieve_global_path = /srv/mail/sieverc
plugin {
sieve = /srv/mail/%u/sieverc
}
}
### end dovecot.conf
### dovecot.log
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: Loading modules from
directory: /usr/lib/dovecot/modules/lda
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: Module loaded:
/usr/lib/dovecot/modules/lda/lib90_cmusieve_plugin.so
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input:
jreese at leetcode.net
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input:
maildir=jreese at leetcode.net/
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: uid=900
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: gid=900
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: maildir:
data=/srv/mail/jreese at leetcode.net/Maildir
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: maildir++:
root=/srv/mail/jreese at leetcode.net/Maildir, index=, cont>
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve:
/srv/mail/%u/sieverc doesn't exist
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve: Using
sieve path: /srv/mail/sieverc
deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve: Executing
script /srv/mail/sievercc
### end dovecot.log
--
John Reese
LeetCode.net
You need to update your sieve plugin This question is best asked on ubuntu list, since these versions are VERY old. you could of course dpkg and remove them, and use the current stable sources for both. It is hard to support users of distros that persist in having ancient "current" versions. On Sun, 2009-01-25 at 01:09, John Reese wrote:> Hi all, > > I'm migrating my private mail server from Dovecot 1.0.10 to Dovecot > 1.1.4 (both the latest package in Ubuntu Hardy and Intrepid, resp.). > > I'm using Postfix with Postfixadmin virtual users , passing mail to > Dspam, which in turn passes email to the Dovecot LDA. The relevant > configuration section is attached below. > > When running on the old version of Dovecot, the LDA correctly executed > either the user's personal sieverc script, or the global sieverc, as > expected. > > However, after the upgrade to 1.1.4, Dovecot will not execute any > per-user Sieve scripts, although the configuration and file permissions > hasn't changed. I've added debug logging to Dovecot, and the relevant > portions of the log file are also attached below. > > What am I missing here? Why can't cmusieve find the user's script? Did > the configuration for Sieve change? I've read and re-read the Dovecot > wiki page for Sieve, and I can't see why my configuration should be > causing any troubles. > > All help or suggestions are greatly appreciated. > > Thank you. > > ### dovecot.conf > > protocols = imap imaps > disable_plaintext_auth = no > > mail_debug = yes > log_path = /var/log/dovecot.log > info_log_path = /var/log/dovecot.log > > mail_location = maildir:/srv/mail/%u/Maildir > first_valid_uid = 900 > > ssl_cert_file = /srv/ssl/dovecot.pem > ssl_key_file = /srv/ssl/leetcode.net.key > > auth default { > mechanisms = plain login > > passdb sql { > args = /srv/etc/dovecot/dovecot-mysql.conf > } > userdb sql { > args = /srv/etc/dovecot/dovecot-mysql.conf > } > > socket listen { > master { > path = /var/run/dovecot/auth-master > mode = 0600 > user = vmail > } > > client { > path = /var/spool/postfix/private/auth > mode = 0600 > user = postfix > group = postfix > } > } > } > > protocol lda { > log_path = /srv/mail/dovecot-deliver.log > auth_socket_path = /var/run/dovecot/auth-master > postmaster_address = postmaster at leetcode.net > mail_plugins = cmusieve > sieve_global_path = /srv/mail/sieverc > > plugin { > sieve = /srv/mail/%u/sieverc > } > } > > ### end dovecot.conf > > ### dovecot.log > > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: Loading modules from > directory: /usr/lib/dovecot/modules/lda > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: Module loaded: > /usr/lib/dovecot/modules/lda/lib90_cmusieve_plugin.so > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: > jreese at leetcode.net > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: > maildir=jreese at leetcode.net/ > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: uid=900 > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: auth input: gid=900 > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: maildir: > data=/srv/mail/jreese at leetcode.net/Maildir > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: maildir++: > root=/srv/mail/jreese at leetcode.net/Maildir, index=, cont> > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve: > /srv/mail/%u/sieverc doesn't exist > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve: Using > sieve path: /srv/mail/sieverc > deliver(jreese at leetcode.net): Jan 24 14:30:40 Info: cmusieve: Executing > script /srv/mail/sievercc > > ### end dovecot.log
one more thing. On Sun, 2009-01-25 at 01:09, John Reese wrote:> > protocol lda { > log_path = /srv/mail/dovecot-deliver.log > auth_socket_path = /var/run/dovecot/auth-master > postmaster_address = postmaster at leetcode.net > mail_plugins = cmusieve > sieve_global_path = /srv/mail/sieverc > > plugin { > sieve = /srv/mail/%u/sieverc > }Have you tried this sieve= ... in the global plugin segment, not in LDA?
On 01/24/2009 09:05 PM, Noel Butler wrote:> Did you try that plugin entry in the global > plugin { } and remove it from LDA?I tried adding it to global, and it didn't change anything, but then I just realized that I still had it in LDA, and so once I removed that part, and only have the configuration in global, it works! Thank you very much for your help Noel. :) Cheers -- John Reese LeetCode.net