[Dovecot] Dovecot upgrade broke per-user Sieve scripts
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@leetcode.net mail_plugins = cmusieve sieve_global_path = /srv/mail/sieverc
plugin {
sieve = /srv/mail/%u/sieverc
}
}
### end dovecot.conf
### dovecot.log
deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: Loading modules from directory: /usr/lib/dovecot/modules/lda deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: Module loaded: /usr/lib/dovecot/modules/lda/lib90_cmusieve_plugin.so deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: jreese@leetcode.net deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: maildir=jreese@leetcode.net/ deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: uid=900 deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: gid=900 deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: maildir: data=/srv/mail/jreese@leetcode.net/Maildir deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: maildir++: root=/srv/mail/jreese@leetcode.net/Maildir, index=, cont> deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: cmusieve: /srv/mail/%u/sieverc doesn't exist deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: cmusieve: Using sieve path: /srv/mail/sieverc deliver(jreese@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@leetcode.net mail_plugins = cmusieve sieve_global_path = /srv/mail/sieverc
plugin { sieve = /srv/mail/%u/sieverc }
}
### end dovecot.conf
### dovecot.log
deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: Loading modules from directory: /usr/lib/dovecot/modules/lda deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: Module loaded: /usr/lib/dovecot/modules/lda/lib90_cmusieve_plugin.so deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: jreese@leetcode.net deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: maildir=jreese@leetcode.net/ deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: uid=900 deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: auth input: gid=900 deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: maildir: data=/srv/mail/jreese@leetcode.net/Maildir deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: maildir++: root=/srv/mail/jreese@leetcode.net/Maildir, index=, cont> deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: cmusieve: /srv/mail/%u/sieverc doesn't exist deliver(jreese@leetcode.net): Jan 24 14:30:40 Info: cmusieve: Using sieve path: /srv/mail/sieverc deliver(jreese@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@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?
participants (2)
-
John Reese
-
Noel Butler