Re: [Dovecot] Shared Mailboxes with VirtualUsers and mail_location retrieved from ldap
(I'm sorry for breaking the thread with each mail)
On 09/09/2011 10:04 AM, Jan-Frode Myklebust wrote:
On Fri, Sep 09, 2011 at 08:18:40AM +0100, mailing lists wrote:
and how to I might configure dovecot to use the mail directory as a subdirectory of the home directory?
this way all lookups for home (with %%h fetched from ldap) will return the correct locationand mail will be in (i.e.) ~/mailSubDir
is this configuration possible?
In the main dovecot.conf:
mail_location = maildir:~/mailSubDir
In the ldap-config:
user_attrs = homeFilter=home
and which is the value for the location directive in namespace declaration ??
namespace { list = children location = maildir:%%h/mailSubDir:INDEX=~/mailSubDIr/shared/%%u prefix = shared.%%u. separator = . subscriptions = no type = shared }
with the above conf. no shared folders are seen by tests users and afaik %%h is retrieved from ldap.
this is that I had done until now:
# telnet localhost 143 Trying ::1... Connected to localhost. Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user001 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAME
. create INBOX.docs-user001 . OK Create completed.
. setacl INBOX.docs-user001 user002 lr . OK Setacl complete. . logout
- BYE Logging out . OK Logout completed. Connection closed by foreign host.
telnet localhost 143
Trying ::1... Connected to localhost. Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user002 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAME
. create INBOX.docs-user002 . OK Create completed. . setacl INBOX.docs-user002 user001 lr . OK Setacl complete. . logout
- BYE Logging out . OK Logout completed. Connection closed by foreign host.
# cat /var/maildir/shared-mailboxes shared/shared-boxes/user/user002/user001 1 shared/shared-boxes/user/user002/user002 1 shared/shared-boxes/user/user001/user001 1 shared/shared-boxes/user/user001/user002 1
# cat /var/maildir/vol04/4/46/user001/.docs-user001/dovecot-acl user=user002 lr
# cat /var/maildir/vol05/4/40/user002/.docs-user002/dovecot-acl user=user001 lr
# telnet localhost 143 Trying ::1... Connected to localhost. Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user001 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS ACL RIGHTS=texk] Logged in . namespace
- NAMESPACE (("INBOX." ".")) (("shared." ".")) NIL . OK Namespace completed. . list "shared." "*" . OK List completed.
/--------------/
# grep ^[^#] /etc/dovecot/dovecot-ldap.conf.ext
uris = ldap://ldap.example.com dn = cn=testuser,dc=example,dc=com dnpass = secret sasl_bind = no tls = no auth_bind = yes ldap_version = 3 base = dc=example,dc=com deref = never scope = subtree user_attrs = mailbox=mail=maildir:/var/maildir/%$,homeFilter=home user_filter = (&(objectClass=CourierMailAccount)(uid=%u)) pass_filter = (&(objectClass=CourierMailAccount)(uid=%u))
# dovecot -n # 2.0.14: /etc/dovecot/dovecot.conf # OS: Linux 2.6.34.7-0.7-xen x86_64 openSUSE 11.3 (x86_64) auth_debug = yes auth_debug_passwords = yes auth_verbose = yes auth_verbose_passwords = plain base_dir = /var/run/dovecot/ disable_plaintext_auth = no mail_debug = yes mail_fsync = always mail_gid = 5000 mail_location = maildir:~/mailSubDir mail_nfs_index = yes mail_nfs_storage = yes mail_plugins = acl mail_uid = 5000 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 mmap_disable = yes namespace { inbox = yes location = prefix = INBOX. separator = . } namespace { list = children location = maildir:%%h/mailSubDir:INDEX=~/mailSubDir/shared/%%u prefix = shared.%%u. separator = . subscriptions = no type = shared } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = file:/var/maildir/shared-mailboxes sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } protocols = imap lmtp service lmtp { inet_listener lmtp { port = 24 } unix_listener lmtp { user = vmail } } ssl = no userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } verbose_proctitle = yes protocol lmtp { mail_plugins = acl } protocol lda { mail_plugins = acl } protocol imap { mail_max_userip_connections = 100 mail_plugins = acl imap_acl autocreate }
participants (1)
-
mailing lists