dsync for subscription on public/shared folder
Hello,
I already wrote regarding that, but maybe it sounded too complex. I will write it a bit softer now.
The replication through dsnyc works perfectly with one exception. I am having an issue with the replication of the subscriptions file on shared folder.
We have a public mailbox defined:
namespace public-test { location = maildir:/opt/mail/_public/test prefix = public/test/ separator = / subscriptions = no type = public }
There 2 subfolder .Test1 and .Test2 which I would like to subscribe on my user "ldaptestuser" which is part of the group "ldaptestgroup"
The dovecot-acl file on /opt/mail/_public/test and /opt/mail/_public/test/.Test{1,2} are the same and are containing:
group=ldaptestgroup lrwstipekxa
Now if I login through my client (Thunderbird or Roundcubemail) I can see the following debug log:
dovecot: imap(ldaptestuser): Debug: acl: acl username = ldaptestuser dovecot: imap(ldaptestuser): Debug: acl: owner = 0 dovecot: imap(ldaptestuser): Debug: acl: group added: domain users dovecot: imap(ldaptestuser): Debug: acl: group added: ldaptestgroup dovecot: imap(ldaptestuser): Debug: acl: group added: all_mailuser
I created one new private folder on the mailbox of my test user and also subscribed it. This subscription is successfully replicated.
After that I am trying to subscribe the public folder. I can see the folder in my client after I subscribed them. But on the 2nd dovecot server the subscription file is not updated.
imap-1 # cat subscription Private1 public/test/Test1
imap-2 # cat subscription Private1
The debug log on both dovecot server tells me: dovecot: doveadm(<ip>,ldaptestuser): Debug: Effective uid=834603987, gid=991, home=/opt/mail/ldaptestuser dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: No acl_shared_dict setting - shared mailbox listing is disabled dovecot: doveadm(<ip>,ldaptestuser): Debug: maildir++: root=/opt/mail/_public/test, index=, indexpvt=, control=, inbox=, alt= dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: initializing backend with data: vfile dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: acl username = ldaptestuser dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: owner = 0 dovecot: doveadm(<ip>,ldaptestuser): Debug: acl vfile: Global ACLs disabled
It looks like the doveadm() cannot find the group or is not checking/initalizing the groups.
Anybody any idea if I missconfigured something or is this just a bug? I really would appreciate some help.
kind regards, Mike;
Hello,
since nobody replied to this issue it might be a bug. Until bug reports are also going to this mailing list, I would like to tell this is a bug for me.
I will add the dovecot -n:
# 2.2.27 (c0f36b0): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.16 (fed8554) # OS: Linux 3.10.0-327.10.1.el7.x86_64 x86_64 CentOS Linux release 7.2.1511 (Core) auth_cache_size = 10 M auth_cache_ttl = 6 hours auth_debug = yes auth_gssapi_hostname = $ALL auth_username_format = %Ln doveadm_password = # hidden, use -P to show it doveadm_port = 12345 first_valid_uid = 1000000 haproxy_timeout = 5 secs haproxy_trusted_networks = 10.0.0.0/8 lmtp_save_to_detail_mailbox = yes mail_access_groups = all_mailuser mail_debug = yes mail_plugins = " mail_log notify replication acl" 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 index ihave duplicate mime foreverypart extracttext mbox_write_locks = fcntl namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = separator = / } namespace public-test { location = maildir:/opt/mail/_public/test prefix = public/test/ separator = / subscriptions = no type = public } passdb { args = /etc/dovecot/dovecot-ldap.conf default_fields = userdb_home=/opt/mail/%u userdb_mail=maildir:/opt/mail/%u/Mails userdb_gid=vmail driver = ldap } plugin { acl = vfile acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes.db mail_debug = yes mail_plugins = " mail_log notify replication acl imap_acl" mail_replica = tcps:imap-1.office.gameduell.de sieve = file:~/sieve;active=~/.dovecot.sieve sieve_default = /etc/dovecot/sieve/default.sieve sieve_global = /etc/dovecot/sieve/global/ } protocols = imap lmtp sieve recipient_delimiter = - replication_dsync_parameters = -d -l 30 -U service aggregator { fifo_listener replication-notify-fifo { mode = 0666 user = vmail } unix_listener replication-notify { mode = 0666 user = vmail } } service auth-worker { process_min_avail = 1 } service auth { inet_listener { port = 12245 } process_min_avail = 1 unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0666 user = postfix } unix_listener auth-userdb { group = vmail mode = 0666 user = vmail } } service doveadm { inet_listener { port = 12345 ssl = yes } } service imap-login { inet_listener imaps { port = 0 ssl = yes } inet_listener imaps_haproxy { haproxy = yes port = 10993 ssl = yes } } service imap-postlogin { executable = script-login /adm/scripts/dovecot_acl_groups.sh user = $default_internal_user } service imap { executable = imap imap-postlogin } service lmtp { inet_listener lmtp { port = 24 ssl = yes } } service managesieve-login { inet_listener sieve { port = 4190 } service_count = 1 } service replicator { process_min_avail = 1 unix_listener replicator-doveadm { mode = 0666 } } ssl = required ssl_cert =
On 12/22/2016 11:31 AM, Mike Fröhner wrote:
Hello,
I already wrote regarding that, but maybe it sounded too complex. I will write it a bit softer now.
The replication through dsnyc works perfectly with one exception. I am having an issue with the replication of the subscriptions file on shared folder.
We have a public mailbox defined:
namespace public-test { location = maildir:/opt/mail/_public/test prefix = public/test/ separator = / subscriptions = no type = public }
There 2 subfolder .Test1 and .Test2 which I would like to subscribe on my user "ldaptestuser" which is part of the group "ldaptestgroup"
The dovecot-acl file on /opt/mail/_public/test and /opt/mail/_public/test/.Test{1,2} are the same and are containing:
group=ldaptestgroup lrwstipekxa
Now if I login through my client (Thunderbird or Roundcubemail) I can see the following debug log:
dovecot: imap(ldaptestuser): Debug: acl: acl username = ldaptestuser dovecot: imap(ldaptestuser): Debug: acl: owner = 0 dovecot: imap(ldaptestuser): Debug: acl: group added: domain users dovecot: imap(ldaptestuser): Debug: acl: group added: ldaptestgroup dovecot: imap(ldaptestuser): Debug: acl: group added: all_mailuser
I created one new private folder on the mailbox of my test user and also subscribed it. This subscription is successfully replicated.
After that I am trying to subscribe the public folder. I can see the folder in my client after I subscribed them. But on the 2nd dovecot server the subscription file is not updated.
imap-1 # cat subscription Private1 public/test/Test1
imap-2 # cat subscription Private1
The debug log on both dovecot server tells me: dovecot: doveadm(<ip>,ldaptestuser): Debug: Effective uid=834603987, gid=991, home=/opt/mail/ldaptestuser dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: No acl_shared_dict setting - shared mailbox listing is disabled dovecot: doveadm(<ip>,ldaptestuser): Debug: maildir++: root=/opt/mail/_public/test, index=, indexpvt=, control=, inbox=, alt= dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: initializing backend with data: vfile dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: acl username = ldaptestuser dovecot: doveadm(<ip>,ldaptestuser): Debug: acl: owner = 0 dovecot: doveadm(<ip>,ldaptestuser): Debug: acl vfile: Global ACLs disabled
It looks like the doveadm() cannot find the group or is not checking/initalizing the groups.
Anybody any idea if I missconfigured something or is this just a bug? I really would appreciate some help.
kind regards, Mike;
participants (1)
-
Mike Fröhner