[Dovecot] migration dove 2.0 2.1 shared namespace acl broken / shared/%%n/ works
Robert Schetterer
robert at schetterer.org
Thu Apr 19 17:45:34 EEST 2012
Am 18.04.2012 19:44, schrieb Robert Schetterer:
> Am 18.04.2012 19:01, schrieb Timo Sirainen:
>> On 17.4.2012, at 17.40, Robert Schetterer wrote:
>>
>>> doveadm acl debug
>>>
>>> shows on both versions
>>>
>>> Fatal: ACL shared dict iteration failed
>>
>> Doesn't it show any other error message before this? Either to terminal or to error log? What's your doveconf -n?
>
>
> Hi Timo,
> i didnt found more usefull errors before
> all are like Debug: acl: No lookup right to mailbox:
> but that istn true, i checked it in the filesystem
> and tried new acls etc
> ( and they working under 2.0.20 )
>
> to me it looks like some acl check/list problem
> perhaps depend on stuff like in i.e
> http://hg.dovecot.org/dovecot-2.1/rev/65a75939ac2c
>
> as i said the old 2.0.20 works still fine
> on the other server
> the only change i did was with virtual and namespace inbox
> to get special_use working
>
>>
> this is from the dove version
>
> # 2.1.4 (85ad4baedd43): /etc/dovecot/dovecot.conf
> # OS: Linux 2.6.32-37-server x86_64 Ubuntu 10.04.4 LTS
> auth_cache_negative_ttl = 0
> auth_cache_size = 50 M
> auth_debug = yes
> auth_debug_passwords = yes
> auth_master_user_separator = *
> auth_mechanisms = plain login
> auth_socket_path = /var/run/dovecot/auth-userdb
> auth_verbose = yes
> auth_verbose_passwords = plain
> auth_worker_max_count = 300
> dict {
> acl = mysql:/etc/dovecot/dovecot-dict-acl-sql.conf.ext
> expire = mysql:/etc/dovecot/dovecot-dict-expire-sql.conf.ext
> quotadict = mysql:/etc/dovecot/dovecot-dict-quota-sql.conf.ext
> }
> disable_plaintext_auth = no
> first_valid_gid = 1001
> first_valid_uid = 1001
> hostname = mail01.example.com
> last_valid_gid = 1001
> last_valid_uid = 1001
> listen = *
> login_greeting = imap, pop ready
> mail_access_groups = vmail
> mail_debug = yes
> mail_fsync = always
> mail_gid = 1001
> mail_location = maildir:~/
> mail_nfs_index = yes
> mail_nfs_storage = yes
> mail_plugins = " stats zlib expire virtual fts fts_squat mail_log
> autocreate notify acl listescape"
> mail_privileged_group = vmail
> mail_uid = 1001
> 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 imapflags notify
> mmap_disable = yes
> namespace {
> list = yes
> location = maildir:/usr/local/virtual/%%d/%%u:INDEX=~/shared/%%d/%%u
> prefix = shared/%%u/
> separator = /
> subscriptions = no
> type = shared
> }
> namespace inbox {
> hidden = no
> list = yes
> location =
> mailbox Drafts {
> auto = subscribe
> special_use = \Drafts
> }
> mailbox Junk {
> auto = subscribe
> special_use = \Junk
> }
> mailbox Sent {
> auto = subscribe
> special_use = \Sent
> }
> mailbox "Sent Messages" {
> special_use = \Sent
> }
> mailbox Trash {
> auto = subscribe
> special_use = \Trash
> }
> mailbox name {
> special_use = \Drafts \Junk \Sent \Trash
> }
> prefix =
> separator = /
> subscriptions = yes
> }
> namespace real {
> hidden = yes
> list = no
> location =
> prefix = RealMails/
> separator = /
> }
> namespace virtual {
> hidden = yes
> list = no
> location = virtual:/etc/dovecot/virtual2:LAYOUT=maildir++:INDEX=~/virtual
> prefix = virtual/
> separator = /
> }
> passdb {
> args = /etc/dovecot/dovecot-sql-master.conf.ext
> driver = sql
> master = yes
> pass = yes
> }
> passdb {
> args = /etc/dovecot/dovecot-sql.conf.ext
> driver = sql
> }
> plugin {
> acl = vfile:/etc/dovecot/global-acls:cache_secs=300
> acl_shared_dict = proxy::acl
> autocreate = Trash
> autocreate2 = Junk
> autocreate3 = Sent
> autocreate4 = Drafts
> autocreate5 = Templates
> autocreate6 = Hostmaster-Backup
> autocreate7 = archiv-backup-mailspooler
> autosubscribe = Trash
> autosubscribe2 = Junk
> autosubscribe3 = Sent
> autosubscribe4 = Drafts
> autosubscribe5 = Templates
> expire = Trash
> expire2 = Trash/*
> expire3 = Junk
> expire4 = Junk/*
> expire5 = Hostmaster-Backup
> expire6 = Hostmaster-Backup/*
> expire7 = archiv-backup-mailspooler/*
> expire_dict = proxy::expire
> fts = squat
> home = /usr/local/virtual/%d/%u
> mail_log_events = delete undelete expunge copy mailbox_delete
> mailbox_rename
> mail_log_fields = uid box msgid size
> mail_log_group_events = yes
> quota = dict:::proxy::quotadict
> quota_warning = storage=95%% quota-warning 95 %u
> quota_warning2 = storage=80%% quota-warning 80 %u
> sieve = /usr/local/virtual/%d/%u/dovecot.sieve
> sieve_before = /etc/dovecot/sieve/global.sieve
> sieve_dir = /usr/local/virtual/%d/%u/sieve
> sieve_execute_bin_dir = /usr/lib/dovecot/sieve-execute
> sieve_execute_socket_dir = sieve-execute
> sieve_extensions = +notify +imapflags
> sieve_filter_bin_dir = /usr/lib/dovecot/sieve-filter
> sieve_filter_socket_dir = sieve-filter
> sieve_global_dir = /etc/dovecot/sieve/
> sieve_global_extensions = +vnd.dovecot.execute +vnd.dovecot.pipe
> +vnd.dovecot.filter
> sieve_global_path = /etc/dovecot/sieve/global.sieve
> sieve_pipe_bin_dir = /usr/lib/dovecot/sieve-pipe
> sieve_pipe_socket_dir = sieve-pipe
> sieve_plugins = sieve_extprograms
> stats_refresh = 30 secs
> stats_track_cmds = yes
> zlib_save = gz
> zlib_save_level = 6
> }
> postmaster_address = hostmaster at mail01.example.com
> protocols = imap pop3 lmtp sieve
> sendmail_path = /usr/lib/sendmail
> service anvil {
> client_limit = 1000
> }
> service auth-worker {
> user = root
> }
> service auth {
> client_limit = 1000
> unix_listener /var/spool/postfix/private/auth {
> group = postfix
> mode = 0666
> user = postfix
> }
> unix_listener auth-userdb {
> group = vmail
> mode = 0600
> user = vmail
> }
> }
> service dict {
> extra_groups = vmail
> unix_listener dict {
> group = vmail
> mode = 0660
> }
> }
> service imap-login {
> inet_listener imap {
> port = 143
> }
> inet_listener imaps {
> port = 993
> ssl = yes
> }
> process_min_avail = 8
> service_count = 1
> }
> service imap-postlogin {
> executable = script-login /usr/local/bin/postlogin_imap.sh
> }
> service imap {
> executable = imap imap-postlogin
> process_limit = 1024
> vsz_limit = 256 M
> }
> service lmtp {
> unix_listener /var/spool/postfix/private/dovecot-lmtp {
> group = postfix
> mode = 0660
> user = postfix
> }
> vsz_limit = 256 M
> }
> service managesieve-login {
> inet_listener {
> address = 127.0.0.1 212.52.224.210 212.52.224.205
> port = 2000
> }
> vsz_limit = 256 M
> }
> service pop3-login {
> inet_listener pop3 {
> port = 110
> }
> inet_listener pop3s {
> port = 995
> ssl = yes
> }
> }
> service pop3-postlogin {
> executable = script-login /usr/local/bin/postlogin_pop3.sh
> }
> service pop3 {
> executable = pop3 pop3-postlogin
> process_limit = 1024
> }
> service quota-warning {
> executable = script /usr/local/bin/quota-warning.sh
> unix_listener quota-warning {
> mode = 0666
> user = vmail
> }
> user = vmail
> }
> service stats {
> fifo_listener stats-mail {
> mode = 0600
> user = vmail
> }
> }
> ssl_ca = </etc/postfix/wildcard.pem
> ssl_cert = </etc/postfix/wildcard.crt
> ssl_key = </etc/postfix/wildcard.key
> userdb {
> args = /etc/dovecot/dovecot-sql.conf.ext
> driver = sql
> }
> userdb {
> args = /etc/dovecot/dovecot-sql.conf.ext
> driver = sql
> }
> verbose_proctitle = yes
> protocol lda {
> mail_plugins = quota sieve virtual acl mail_log notify expire listescape
> }
> protocol imap {
> imap_client_workarounds = delay-newmail
> imap_id_log = *
> imap_id_send = *
> imap_idle_notify_interval = 2 mins
> imap_logout_format = bytes=%i/%o
> imap_max_line_length = 128 k
> mail_max_userip_connections = 100
> mail_plugins = imap_acl acl fts fts_squat mail_log autocreate notify
> expire virtual quota imap_quota zlib imap_zlib listescape stats imap_stats
> }
> protocol lmtp {
> mail_plugins = quota sieve virtual acl fts fts_squat mail_log notify
> expire listescape
> }
> protocol sieve {
> mail_max_userip_connections = 100
> }
> protocol pop3 {
> mail_max_userip_connections = 100
> mail_plugins = expire virtual quota mail_log fts fts_squat notify
> listescape
> pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
> pop3_enable_last = yes
> pop3_fast_size_lookups = yes
> pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s
> pop3_no_flag_updates = no
> pop3_reuse_xuidl = no
> pop3_uidl_format = %g
> }
>
>
>
Hi Timo,
i did some more tests
in shared namespace
prefix
shared/%%u/ is not working
shared/%%n/ is working
i cant use that cause of mutiple domains
naming convention ,users are user at domain.de etc
--
Best Regards
MfG Robert Schetterer
Germany/Munich/Bavaria
More information about the dovecot
mailing list