Dovecot dsync not replicating ".dovecot.sieve -> .sieve/managesieve.sieve" / setactive
Claus
claus.r at bayern-mail.de
Thu Feb 12 17:20:19 UTC 2015
Am 12.02.2015 um 15:47 schrieb Martin Štefany:
> Hello,
>
> I've ran into problem with Dovecot and dsync replication. Everything
> works perfectly, including replication of sieve scripts, except fact
> that if user activates the 'managesieve' ruleset (I'm using currently
> Roundcubemail) on "mail1" host, it wouldn't be activated on "mail2"
> host, by creating symlink ".dovecot.sieve ->
> .sieve/managesieve.sieve". I've also tried to use
> 'replication_full_sync_interval', but symlink is not created anyway.
>
> I found 2 references already for this problem, but none came to any
> conclusion:
>
> http://dovecot.org/pipermail/dovecot/2014-June/096650.html
> http://www.dovecot.org/list/dovecot/2014-September/097857.html
>
>
> Here is the output from 'doveconf -n' from both hosts for reference ::
>
> mail1 ::
> # 2.2.10: /etc/dovecot/dovecot.conf
> # OS: Linux 3.10.0-123.20.1.el7.x86_64 x86_64 CentOS Linux release
> 7.0.1406 (Core)
> auth_cache_size = 5 M
> auth_debug = yes
> auth_default_realm = example.com
> auth_gssapi_hostname = mail.example.com
> auth_krb5_keytab = /etc/dovecot/dovecot.keytab
> auth_mechanisms = plain gssapi
> auth_realms = example.com
> auth_verbose = yes
> doveadm_password = <secret>
> lmtp_save_to_detail_mailbox = yes
> mail_debug = yes
> mail_location = maildir:~/Maildir
> mail_plugins = " fts fts_lucene notify quota replication virtual zlib"
> managesieve_notify_capability = mailto
> managesieve_sieve_capability = fileinto reject envelope
> encoded-character vacation subaddress comparator-i;ascii-numeric
> relational regex imap4flags copy include variables body enotify
> environment mailbox date ihave
> namespace inbox {
> inbox = yes
> location =
> mailbox All {
> auto = create
> special_use = \All
> }
> mailbox Archives {
> auto = subscribe
> special_use = \Archive
> }
> mailbox Drafts {
> auto = subscribe
> special_use = \Drafts
> }
> mailbox Junk {
> auto = subscribe
> special_use = \Junk
> }
> mailbox Sent {
> auto = subscribe
> special_use = \Sent
> }
> mailbox Templates {
> auto = subscribe
> }
> mailbox Trash {
> auto = subscribe
> special_use = \Trash
> }
> prefix =
> separator = /
> type = private
> }
> passdb {
> args = /etc/dovecot/dovecot-ldap-passdb.conf.ext
> driver = ldap
> }
> plugin {
> fts = lucene
> fts_autoindex = yes
> fts_lucene = whitespace_chars=@.
> mail_replica = tcps:mail2.example.com:10993
> quota = maildir:User quota
> quota_rule = *:storage=4GB
> quota_rule2 = Trash:storage=+50MB
> sieve = ~/.dovecot.sieve
> sieve_after = /srv/sieve/after.d/
> sieve_before = /srv/sieve/before.d/
> sieve_default = /srv/sieve/default.d/dovecot.sieve
> sieve_dir = ~/.sieve
> sieve_global_dir = /srv/sieve/
> zlib_save = gz
> zlib_save_level = 9
> }
> postmaster_address = postmaster at example.com
> protocols = imap lmtp sieve
> service aggregator {
> fifo_listener replication-notify-fifo {
> group = vmail
> mode = 0660
> user = vmail
> }
> unix_listener replication-notify {
> group = vmail
> mode = 0660
> user = vmail
> }
> }
> service auth {
> unix_listener /var/spool/postfix/private/dovecot-auth {
> group = postfix
> mode = 0660
> user = postfix
> }
> }
> service doveadm {
> inet_listener {
> port = 10993
> ssl = yes
> }
> }
> service imap-login {
> inet_listener imaps {
> port = 0
> }
> }
> service lmtp {
> unix_listener /var/spool/postfix/private/dovecot-lmtp {
> group = postfix
> mode = 0660
> user = postfix
> }
> }
> service managesieve-login {
> inet_listener sieve {
> port = 4190
> }
> service_count = 1
> }
> service replicator {
> process_min_avail = 1
> unix_listener replicator-doveadm {
> group = vmail
> mode = 0660
> user = vmail
> }
> }
> ssl_ca = </etc/ipa/ca.crt
> ssl_cert = </etc/pki/tls/certs/dovecot.pem
> ssl_cipher_list =
> EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
> ssl_client_ca_file = /etc/ipa/ca.crt
> ssl_client_cert = </etc/pki/tls/certs/dovecot.pem
> ssl_client_key = </etc/pki/tls/private/dovecot.key
> ssl_key = </etc/pki/tls/private/dovecot.key
> ssl_parameters_regenerate = 1 weeks
> ssl_prefer_server_ciphers = yes
> ssl_protocols = !SSLv2 !SSLv3
> userdb {
> args = /etc/dovecot/dovecot-ldap-userdb.conf.ext
> driver = ldap
> override_fields = gid=vmail home=/srv/vmail/example.com/%n
> }
> verbose_ssl = yes
> protocol lmtp {
> mail_plugins = " fts fts_lucene notify quota replication virtual
> zlib sieve"
> }
> protocol imap {
> mail_plugins = " fts fts_lucene notify quota replication virtual
> zlib imap_quota imap_zlib"
> }
>
>
> mail2 ::
> # 2.2.10: /etc/dovecot/dovecot.conf
> # OS: Linux 3.10.0-123.20.1.el7.x86_64 x86_64 CentOS Linux release
> 7.0.1406 (Core)
> auth_cache_size = 5 M
> auth_debug = yes
> auth_default_realm = example.com
> auth_gssapi_hostname = mail.example.com
> auth_krb5_keytab = /etc/dovecot/dovecot.keytab
> auth_mechanisms = plain gssapi
> auth_realms = example.com
> auth_verbose = yes
> doveadm_password = <secret>
> lmtp_save_to_detail_mailbox = yes
> mail_debug = yes
> mail_location = maildir:~/Maildir
> mail_plugins = " fts fts_lucene notify quota replication virtual zlib"
> managesieve_notify_capability = mailto
> managesieve_sieve_capability = fileinto reject envelope
> encoded-character vacation subaddress comparator-i;ascii-numeric
> relational regex imap4flags copy include variables body enotify
> environment mailbox date ihave
> namespace inbox {
> inbox = yes
> location =
> mailbox All {
> auto = create
> special_use = \All
> }
> mailbox Archives {
> auto = subscribe
> special_use = \Archive
> }
> mailbox Drafts {
> auto = subscribe
> special_use = \Drafts
> }
> mailbox Junk {
> auto = subscribe
> special_use = \Junk
> }
> mailbox Sent {
> auto = subscribe
> special_use = \Sent
> }
> mailbox Templates {
> auto = subscribe
> }
> mailbox Trash {
> auto = subscribe
> special_use = \Trash
> }
> prefix =
> separator = /
> type = private
> }
> passdb {
> args = /etc/dovecot/dovecot-ldap-passdb.conf.ext
> driver = ldap
> }
> plugin {
> fts = lucene
> fts_autoindex = yes
> fts_lucene = whitespace_chars=@.
> mail_replica = tcps:mail1.example.com:10993
> quota = maildir:User quota
> quota_rule = *:storage=4GB
> quota_rule2 = Trash:storage=+50MB
> sieve = ~/.dovecot.sieve
> sieve_after = /srv/sieve/after.d/
> sieve_before = /srv/sieve/before.d/
> sieve_default = /srv/sieve/default.d/dovecot.sieve
> sieve_dir = ~/.sieve
> sieve_global_dir = /srv/sieve/
> zlib_save = gz
> zlib_save_level = 9
> }
> postmaster_address = postmaster at example.com
> protocols = imap lmtp sieve
> service aggregator {
> fifo_listener replication-notify-fifo {
> group = vmail
> mode = 0660
> user = vmail
> }
> unix_listener replication-notify {
> group = vmail
> mode = 0660
> user = vmail
> }
> }
> service auth {
> unix_listener /var/spool/postfix/private/dovecot-auth {
> group = postfix
> mode = 0660
> user = postfix
> }
> }
> service doveadm {
> inet_listener {
> port = 10993
> ssl = yes
> }
> }
> service imap-login {
> inet_listener imaps {
> port = 0
> }
> }
> service lmtp {
> unix_listener /var/spool/postfix/private/dovecot-lmtp {
> group = postfix
> mode = 0660
> user = postfix
> }
> }
> service managesieve-login {
> inet_listener sieve {
> port = 4190
> }
> service_count = 1
> }
> service replicator {
> process_min_avail = 1
> unix_listener replicator-doveadm {
> group = vmail
> mode = 0660
> user = vmail
> }
> }
> ssl_ca = </etc/ipa/ca.crt
> ssl_cert = </etc/pki/tls/certs/dovecot.pem
> ssl_cipher_list =
> EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
> ssl_client_ca_file = /etc/ipa/ca.crt
> ssl_client_cert = </etc/pki/tls/certs/dovecot.pem
> ssl_client_key = </etc/pki/tls/private/dovecot.key
> ssl_key = </etc/pki/tls/private/dovecot.key
> ssl_parameters_regenerate = 1 weeks
> ssl_prefer_server_ciphers = yes
> ssl_protocols = !SSLv2 !SSLv3
> userdb {
> args = /etc/dovecot/dovecot-ldap-userdb.conf.ext
> driver = ldap
> override_fields = gid=vmail home=/srv/vmail/example.com/%n
> }
> verbose_ssl = yes
> protocol lmtp {
> mail_plugins = " fts fts_lucene notify quota replication virtual
> zlib sieve"
> }
> protocol imap {
> mail_plugins = " fts fts_lucene notify quota replication virtual
> zlib imap_quota imap_zlib"
> }
>
>
>
> And reference directory structure ::
> [root at mail1 ~]# tree -a /srv
> /srv
> ├── sieve
> │ ├── after.d
> │ ├── before.d
> │ │ ├── spam.sieve
> │ │ └── spam.svbin
> │ └── default.d
> └── vmail
> └── example.com
> └── <user>
> ├── .dovecot.lda-dupes
> ├── .dovecot.sieve -> .sieve/managesieve.sieve
> ├── .dovecot.svbin
> ├── Maildir
> │ ├── .All
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── .Archives
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── cur
> │ ├── dovecot.index.cache
> │ ├── dovecot.index.log
> │ ├── dovecot.index.thread
> │ ├── dovecot-keywords
> │ ├── dovecot.mailbox.log
> │ ├── dovecot-uidlist
> │ ├── dovecot-uidvalidity
> │ ├── dovecot-uidvalidity.54dbb6f0
> │ ├── .Drafts
> │ │ ├── cur
> │ │ ├── dovecot.index.cache
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── .Junk
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── lucene-indexes
> │ │ ├── _k.cfs
> │ │ ├── segments_17
> │ │ └── segments.gen
> │ ├── maildirfolder
> │ ├── maildirsize
> │ ├── new
> │ ├── .Sent
> │ │ ├── cur
> │ │ ├── dovecot.index.cache
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── subscriptions
> │ ├── .Templates
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── tmp
> │ └── .Trash
> │ ├── cur
> │ ├── dovecot.index.log
> │ ├── dovecot-uidlist
> │ ├── maildirfolder
> │ ├── new
> │ └── tmp
> └── .sieve
> ├── managesieve.sieve
> └── tmp
>
>
> [root at mail2 ~]# tree -a /srv
> /srv
> ├── sieve
> │ ├── after.d
> │ ├── before.d
> │ │ ├── spam.sieve
> │ │ └── spam.svbin
> │ └── default.d
> └── vmail
> └── example.com
> └── <user>
> ├── Maildir
> │ ├── .All
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── .Archives
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── cur
> │ ├── dovecot.index.cache
> │ ├── dovecot.index.log
> │ ├── dovecot-keywords
> │ ├── dovecot.mailbox.log
> │ ├── dovecot-uidlist
> │ ├── dovecot-uidvalidity
> │ ├── dovecot-uidvalidity.54dbb6f5
> │ ├── .Drafts
> │ │ ├── cur
> │ │ ├── dovecot.index.cache
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── .Junk
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── lucene-indexes
> │ │ ├── _k.cfs
> │ │ ├── segments_17
> │ │ └── segments.gen
> │ ├── maildirfolder
> │ ├── maildirsize
> │ ├── new
> │ ├── .Sent
> │ │ ├── cur
> │ │ ├── dovecot.index.cache
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── subscriptions
> │ ├── .Templates
> │ │ ├── cur
> │ │ ├── dovecot.index.log
> │ │ ├── dovecot-uidlist
> │ │ ├── maildirfolder
> │ │ ├── new
> │ │ └── tmp
> │ ├── tmp
> │ └── .Trash
> │ ├── cur
> │ ├── dovecot.index.log
> │ ├── dovecot-uidlist
> │ ├── maildirfolder
> │ ├── new
> │ └── tmp
> └── .sieve
> ├── managesieve.sieve
> └── tmp
>
> Thanks a lot for Dovecot anyway! ;)
>
> Martin
Hi Martin,
the problem was fixed in pigeonhole-0.4.4.
I recommend to use dovecot-2.2.15 with newest pigeonhole-0.4.6.
Claus
More information about the dovecot
mailing list