Hi,
I think I have configured everything correctly but for some reason I can?t get a
list of the shared mailboxes to show up.
When I run:
doveadm acl debug -u m.markov Shared/d.marteva/INBOX
doveadm(root): Debug: Skipping module doveadm_fts_plugin, because dlopen()
failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: undefined
symbol: fts_backend_rescan (this is usually intentional, so just ignore this
message)
doveadm(m.markov): Debug: Added userdb setting: plugin/=yes
doveadm(m.markov): Debug: Effective uid=1000, gid=1000,
home=/home/vmail/domain.com/m.markov
doveadm(m.markov): Debug: Namespace inbox: type=private, prefix=, sep=/,
inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/Maildir
doveadm(m.markov): Debug: maildir++:
root=/home/vmail/domain.com/m.markov/Maildir, index=, indexpvt=, control=,
inbox=/home/vmail/domain.com/m.markov/Maildir, altdoveadm(m.markov): Debug: acl:
initializing backend with data: vfile
doveadm(m.markov): Debug: acl: acl username = m.markov at domain.com
doveadm(m.markov): Debug: acl: owner = 1
doveadm(m.markov): Debug: acl vfile: Global ACLs disabled
[ Read 8 lines ]
doveadm(m.markov): Debug: Namespace : type=public, prefix=Public/, sep=/,
inbox=no, hidden=no, list=yes, subscriptions=yes
location=maildir:/home/vmail/Public:INDEXPVT=~/Maildir/Publics
doveadm(m.markov): Debug: maildir++: root=/home/vmail/Public, index=,
indexpvt=/home/vmail/domain.com/m.markov/Maildir/Public, control=, inbox=,
alt=ext ^T To Spell
doveadm(m.markov): Debug: acl: initializing backend with data: vfile
doveadm(m.markov): Debug: acl: acl username = m.markov at domain.com
doveadm(m.markov): Debug: acl: owner = 0
doveadm(m.markov): Debug: acl vfile: Global ACLs disabled
doveadm(m.markov): Debug: Namespace : type=shared, prefix=Shared/%u/, sep=/,
inbox=no, hidden=no, list=yes, subscriptions=yes
location=maildir:/home/vmail/domain.com/%u/Maildir:INDEXPVT=~/Maildir/shared/%u
doveadm(m.markov): Debug: shared: root=/var/run/dovecot, index=, indexpvt=,
control=, inbox=, altdoveadm(m.markov): Debug: acl: initializing backend with
data: vfile
doveadm(m.markov): Debug: acl: acl username = m.markov at domain.com
doveadm(m.markov): Debug: acl: owner = 0
doveadm(m.markov): Debug: acl vfile: Global ACLs disabled
doveadm(m.markov): Debug: maildir++:
root=/home/vmail/domain.com/d.marteva/Maildir, index=,
indexpvt=/home/vmail//d.marteva/Maildir/shared/d.marteva, control=,
inbox=/home/vmail/domain.com/d.marteva/Maildir, altdoveadm(m.markov): Debug:
acl: initializing backend with data: vfile
doveadm(m.markov): Debug: acl: acl username = d.marteva
doveadm(m.markov): Debug: acl: owner = 1
doveadm(m.markov): Debug: acl vfile: Global ACLs disabled
doveadm(m.markov): Debug: maildir++:
root=/home/vmail/domain.com/d.marteva/Maildir, index=,
indexpvt=/home/vmail/domain.com/m.markov/Maildir/shared/d.marteva, control=,
inbox=/home/vmail/domain.com/d.marteva/Maildir, altdoveadm(m.markov): Debug:
acl: initializing backend with data: vfile
doveadm(m.markov): Debug: acl: acl username = m.markov at domain.com
doveadm(m.markov): Debug: acl: owner = 0
doveadm(m.markov): Debug: acl vfile: Global ACLs disabled
doveadm(m.markov): Info: Mailbox 'INBOX' is in namespace
'Shared/d.marteva/'
doveadm(m.markov): Info: Mailbox path: /home/vmail/domain.com/d.marteva/Maildir
doveadm(m.markov): Info: Per-user private flags in mailbox: \Seen
doveadm(m.markov): Debug: acl vfile: reading file
/home/vmail/domain.com/d.marteva/Maildir/dovecot-acl
doveadm(m.markov): Info: User m.markov at domain.com has rights: lookup read
write create
doveadm(m.markov): Info: Mailbox found from dovecot-acl-list
doveadm(m.markov): Info: User d.marteva found from ACL shared dict
doveadm(m.markov): Info: Mailbox Shared/d.marteva/INBOX is visible in LIST
Here is how I have defined the namespace:
namespace {
type = shared
separator = /
prefix = Shared/%%u/
# a) Per-user seen flags. Maildir indexes are shared. (INDEXPVT requires
v2.2+)
location =
maildir:/home/vmail/domain.com/%%u/Maildir:INDEXPVT=~/Maildir/shared/%%u
# b) Per-user seen flags. Maildir indexes are not shared. If users have direct
filesystem level access to their mails, this is a safer option:
#location =
maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u:INDEXPVT=~/Maildir/shared/%%u
subscriptions = yes
# list = children
list=yes
}
And here is the ACL config:
plugin {
#acl = vfile:/etc/dovecot/global-acls:cache_secs=300
acl = vfile
}
# To let users LIST mailboxes shared by other users, Dovecot needs a
# shared mailbox dictionary. For example:
plugin {
#acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes
acl_shared_dict = file:/home/vmail/domain.com/shared-mailboxes2
#acl_lookup_dict = file:/home/vmail/domain.com/shared-mailboxes
}
Any suggestions?