Re: dsync and sieve again
Hi, imapc does not sync sieve scripts. You need to use native doveadm protocol. Sami > On 25. Feb 2021, at 20.56, Edgaras Lukoševičius > wrote: > > Then what is a correct configuration? Because I was not able to get it to > work. > > It is a simple setup using VirtualUsers, Maildir format, Home and Mail > directories are separate as per documentation here > https://wiki2.dovecot.org/VirtualUsers/Home, and here: > https://doc.dovecot.org/configuration_manual/mail_location/ > > Both of the hosts have exactly same versions, and exactly same configurations > (except for hostnames of course) > > ManageSieve, and Sieve itself is working (tested), and while I was going > through all the steps and configuration variations I have also enabled > imap_sieve plugin. > > Directory layout on source.host.tld: > > /home/vmail/d/o/domin.tld/local > ├── Maildir > │ ├── cur > │ ├── new > │ ├── tmp > │ ├── dovecot.index.log > │ ├── dovecot.list.index.log > │ ├── dovecot-uidlist > │ ├── dovecot-uidvalidity > │ ├── dovecot-uidvalidity.602d8428 > │ └── subscriptions > └── sieve > │ ├── script.sieve > │ └── tmp > └── .dovecot.sieve -> sieve/script.sieve > > I have tried to pull data from source: /usr/bin/dsync -Dv -o > imapc_host=source.host.tld -o imapc_port=143 -o imapc_user=lo...@domain.tld > -o imapc_password=123456789 sync -1 -R -f -u lo...@domain.tld imapc: > > I have also tried to push data to destination: /usr/bin/dsync -Dv -o > imapc_host=destination.host.tld -o imapc_port=143 -o > imapc_user=lo...@domain.tld -o imapc_password=123456789 sync -1 -f -u > lo...@domain.tld imapc: > > Output of dsync is as follows: > > > Debug: Loading modules from directory: /usr/lib64/dovecot > Debug: Module loaded: /usr/lib64/dovecot/lib10_quota_plugin.so > Debug: Module loaded: /usr/lib64/dovecot/lib20_quota_clone_plugin.so > Debug: Module loaded: /usr/lib64/dovecot/lib20_zlib_plugin.so > Debug: Loading modules from directory: /usr/lib64/dovecot/doveadm > Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_quota_plugin.so > Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_sieve_plugin.so > ... > dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): Server > capabilities: IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ > STARTTLS AUTH=PLAIN AUTH=LOGIN > dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): > Authenticating as lo...@domain.tld > dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): Server > capabilities: IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT > SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND > URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED > I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH > LIST-STATUS BINARY MOVE SNIPPET=FUZZY PREVIEW=FUZZY STATUS=SIZE SAVEDATE > LITERAL+ NOTIFY SPECIAL-USE IMAPSIEVE=sieve://source.host.tld:4190 QUOTA > ... > dsync(lo...@domain.tld): Debug: doveadm-sieve: Iterating Sieve mailbox > attributes > dsync(lo...@domain.tld): Debug: sieve: Pigeonhole version 0.5.13 (cdd19fe3) > initializing > dsync(lo...@domain.tld): Debug: sieve: include: sieve_global is not set; it > is currently not possible to include `:global' scripts. > dsync(lo...@domain.tld): Debug: sieve: Sieve imapsieve plugin for Pigeonhole > version 0.5.13 (cdd19fe3) loaded > dsync(lo...@domain.tld): Debug: sieve: Sieve Extprograms plugin for > Pigeonhole version 0.5.13 (cdd19fe3) loaded > dsync(lo...@domain.tld): Debug: sieve: file storage: Using active Sieve > script path: /home/vmail/d/o/domin.tld/local/.dovecot.sieve > dsync(lo...@domain.tld): Debug: sieve: file storage: Using script storage > path: /home/vmail/d/o/domin.tld/local/sieve > dsync(lo...@domain.tld): Debug: sieve: file storage: Using permissions from > /home/vmail/d/o/domin.tld/local/sieve: mode=0700 gid=-1 > dsync(lo...@domain.tld): Debug: sieve: file storage: Relative path to sieve > storage in active link: sieve/ > dsync(lo...@domain.tld): Debug: sieve: file storage: sync: Synchronization > active > > ... > dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Last common UID=0. > Delayed expunges= > dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Saved UIDs: > dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Finish update: > min_next_uid=1 min_first_recent_uid=1 min_highest_modseq=1 > min_highest_pvt_modseq=0 > ... > dsync(lo...@domain.tld): Debug: imapc(source.host.tld:143): Disconnected > dsync(lo...@domain.tld): Debug: auth-master: conn > unix:/var/run/dovecot/auth-userdb (pid=3284,uid=0): Disconnected: Connection > closed (fd=10) > ... > > > > Configuration on both hosts is as follows > > # 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf > # Pigeonhole version 0.5.13 (cdd19fe3) > # OS: Linux 3.10.0-1062.18.1.el7.x86_64 x86_64 CentOS Linux release 7.7.1908 > (Core) > # Hostname: destination.domain.tld > #
Re: dsync and sieve again
Then what is a correct configuration? Because I was not able to get it to work. It is a simple setup using VirtualUsers, Maildir format, Home and Mail directories are separate as per documentation here https://wiki2.dovecot.org/VirtualUsers/Home, and here: https://doc.dovecot.org/configuration_manual/mail_location/ Both of the hosts have exactly same versions, and exactly same configurations (except for hostnames of course) ManageSieve, and Sieve itself is working (tested), and while I was going through all the steps and configuration variations I have also enabled imap_sieve plugin. Directory layout on source.host.tld: /home/vmail/d/o/domin.tld/local ├── Maildir │ ├── cur │ ├── new │ ├── tmp │ ├── dovecot.index.log │ ├── dovecot.list.index.log │ ├── dovecot-uidlist │ ├── dovecot-uidvalidity │ ├── dovecot-uidvalidity.602d8428 │ └── subscriptions └── sieve │ ├── script.sieve │ └── tmp └── .dovecot.sieve -> sieve/script.sieve I have tried to pull data from source: /usr/bin/dsync -Dv -o imapc_host=source.host.tld -o imapc_port=143 -o imapc_user=lo...@domain.tld -o imapc_password=123456789 sync -1 -R -f -u lo...@domain.tld imapc: I have also tried to push data to destination: /usr/bin/dsync -Dv -o imapc_host=destination.host.tld -o imapc_port=143 -o imapc_user=lo...@domain.tld -o imapc_password=123456789 sync -1 -f -u lo...@domain.tld imapc: Output of dsync is as follows: Debug: Loading modules from directory: /usr/lib64/dovecot Debug: Module loaded: /usr/lib64/dovecot/lib10_quota_plugin.so Debug: Module loaded: /usr/lib64/dovecot/lib20_quota_clone_plugin.so Debug: Module loaded: /usr/lib64/dovecot/lib20_zlib_plugin.so Debug: Loading modules from directory: /usr/lib64/dovecot/doveadm Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_quota_plugin.so Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_sieve_plugin.so ... dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): Server capabilities: IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ STARTTLS AUTH=PLAIN AUTH=LOGIN dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): Authenticating as lo...@domain.tld dsync(edga...@hoslinger.com): Debug: imapc(source.host.tld:143): Server capabilities: IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE SNIPPET=FUZZY PREVIEW=FUZZY STATUS=SIZE SAVEDATE LITERAL+ NOTIFY SPECIAL-USE IMAPSIEVE=sieve://source.host.tld:4190 QUOTA ... dsync(lo...@domain.tld): Debug: doveadm-sieve: Iterating Sieve mailbox attributes dsync(lo...@domain.tld): Debug: sieve: Pigeonhole version 0.5.13 (cdd19fe3) initializing dsync(lo...@domain.tld): Debug: sieve: include: sieve_global is not set; it is currently not possible to include `:global' scripts. dsync(lo...@domain.tld): Debug: sieve: Sieve imapsieve plugin for Pigeonhole version 0.5.13 (cdd19fe3) loaded dsync(lo...@domain.tld): Debug: sieve: Sieve Extprograms plugin for Pigeonhole version 0.5.13 (cdd19fe3) loaded dsync(lo...@domain.tld): Debug: sieve: file storage: Using active Sieve script path: /home/vmail/d/o/domin.tld/local/.dovecot.sieve dsync(lo...@domain.tld): Debug: sieve: file storage: Using script storage path: /home/vmail/d/o/domin.tld/local/sieve dsync(lo...@domain.tld): Debug: sieve: file storage: Using permissions from /home/vmail/d/o/domin.tld/local/sieve: mode=0700 gid=-1 dsync(lo...@domain.tld): Debug: sieve: file storage: Relative path to sieve storage in active link: sieve/ dsync(lo...@domain.tld): Debug: sieve: file storage: sync: Synchronization active ... dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Last common UID=0. Delayed expunges= dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Saved UIDs: dsync(lo...@domain.tld): Debug: brain M: Import INBOX: Finish update: min_next_uid=1 min_first_recent_uid=1 min_highest_modseq=1 min_highest_pvt_modseq=0 ... dsync(lo...@domain.tld): Debug: imapc(source.host.tld:143): Disconnected dsync(lo...@domain.tld): Debug: auth-master: conn unix:/var/run/dovecot/auth-userdb (pid=3284,uid=0): Disconnected: Connection closed (fd=10) ... Configuration on both hosts is as follows # 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.13 (cdd19fe3) # OS: Linux 3.10.0-1062.18.1.el7.x86_64 x86_64 CentOS Linux release 7.7.1908 (Core) # Hostname: destination.domain.tld # NOTE: Send doveconf -n output instead when asking for help. auth_anonymous_username = anonymous auth_cache_negative_ttl = 1 hours auth_cache_size = 0 auth_cache_ttl = 1 hours auth_cache_verify_password_with_worker = no auth_debug = no auth_debug_passwords = no auth_default_realm = auth_failure_delay = 2 secs auth_gssapi_hostname = auth_krb5_keytab =
Re: dsync and sieve again
> On 17. Feb 2021, at 23.53, Edgaras Lukoševičius > wrote: > > Hi, > > I'm starting to wonder if dsync is supposed to sync sieve scripts at all? Or > should it work only as a part of replicator? Because I was not able to get it > working on multiple Dovecot and Pigeon versions, and I see lots of > replication/dsync and sieve related questions in the mailing list. > > I'm trying to get it to work using latest versions on > http://repo.dovecot.org/ce-2.3-latest repo. > > The versions I am testing at the moment are: > - Dovecot 2.3.13 (89f716dc2) > - Pigeonhole 0.5.13 (cdd19fe3) > > It's a straightforward setup, nothing fancy. So the question is - is it > supposed to work at all without replicator? > It does sync sieve scripts as long as you have the plugin installed in both ends and have correct configuration regarding sieve script location. Sami