Hello list,
I'm implementing shared mailboxes on live system and after enabling acl
plugin I got errors in my log:
Jun 17 15:50:33 dict: Error: sql dict iterate: Invalid/unmapped path:
shared/shared-boxes/anyone/
I have no clue why this happening, users don't know about new functionality
they just use imap as before. Also dict database begin to fill up by records
like:
select * from user_shares;
user at domain.com|admin at domain.com|1
But user don't use setacl command.
Searching for the list gave
http://www.dovecot.org/list/dovecot/2009-April/038664.html , but question seemed
still open. So, can someone give point how to fix\avoid this ?
One more question, on live system it's hard to debug dovecot with
mail_debug=yes for all users, can this option be turn on for individual user? or
maybe mail_debug stream can be redirected also for individual user ?
dovecot -n
# 1.2.11: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.26-gentoo-r4 i686 Gentoo Base System release 1.12.13
log_path: /var/log/dovecot/dovecot-error.log
info_log_path: /var/log/dovecot/dovecot.log
protocols: imaps pop3s managesieve
ssl_cert_file: /etc/ssl/dovecot/imaps.crt
ssl_key_file: /etc/ssl/dovecot/imaps.key
login_dir: /var/run/dovecot/login
login_executable(default): /usr/libexec/dovecot/imap-login
login_executable(imap): /usr/libexec/dovecot/imap-login
login_executable(pop3): /usr/libexec/dovecot/pop3-login
login_executable(managesieve): /usr/libexec/dovecot/managesieve-login
login_greeting: Server ready.
login_processes_count(default): 50
login_processes_count(imap): 50
login_processes_count(pop3): 5
login_processes_count(managesieve): 5
login_max_processes_count: 2048
max_mail_processes: 2048
mail_max_userip_connections(default): 25
mail_max_userip_connections(imap): 25
mail_max_userip_connections(pop3): 10
mail_max_userip_connections(managesieve): 10
first_valid_uid: 8
last_valid_uid: 8
first_valid_gid: 12
last_valid_gid: 12
mail_drop_priv_before_exec: yes
mail_executable(default): /usr/libexec/dovecot/imap
mail_executable(imap): /usr/libexec/dovecot/imap
mail_executable(pop3): /usr/libexec/dovecot/pop3
mail_executable(managesieve): /usr/libexec/dovecot/managesieve
mail_plugins(default): quota imap_quota trash expire zlib autocreate virtual
antispam acl imap_acl
mail_plugins(imap): quota imap_quota trash expire zlib autocreate virtual
antispam acl imap_acl
mail_plugins(pop3): quota virtual
mail_plugins(managesieve):
mail_plugin_dir(default): /usr/lib/dovecot/imap
mail_plugin_dir(imap): /usr/lib/dovecot/imap
mail_plugin_dir(pop3): /usr/lib/dovecot/pop3
mail_plugin_dir(managesieve): /usr/lib/dovecot/managesieve
imap_client_workarounds(default): delay-newmail
imap_client_workarounds(imap): delay-newmail
imap_client_workarounds(pop3):
imap_client_workarounds(managesieve):
pop3_client_workarounds(default):
pop3_client_workarounds(imap):
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
pop3_client_workarounds(managesieve):
namespace:
type: private
separator: /
location: maildir:~/data
inbox: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: Company/
location: virtual:/var/mail/virtual:INDEX=MEMORY:LAYOUT=maildir++
hidden: yes
list: yes
namespace:
type: shared
separator: /
prefix: shared/%%u/
location: maildir:%%h/data:INDEX=%h/shared/%%u
list: children
lda:
postmaster_address: postmaster at domain.com
hostname: mail.domain.com
mail_plugins: quota trash expire sieve virtual acl
quota_full_tempfail: yes
sendmail_path: /usr/sbin/sendmail
auth_socket_path: /var/run/dovecot/auth-master
log_path: /var/log/dovecot/dovecot-deliver.log
info_log_path: /var/log/dovecot/dovecot-deliver.log
auth default:
mechanisms: plain login
default_realm: domain.com
cache_size: 10240
cache_negative_ttl: 0
user: dovecot_auth
username_format: %Lu
master_user_separator: *
worker_max_count: 50
passdb:
driver: passwd-file
args: /etc/dovecot/passdb/master.pwd
master: yes
passdb:
driver: passwd-file
args: /etc/dovecot/passdb/users.pwd
passdb:
driver: ldap
args: /etc/dovecot/dovecot-ldap.conf
userdb:
driver: prefetch
userdb:
driver: passwd-file
args: /etc/dovecot/passdb/users.pwd
userdb:
driver: ldap
args: /etc/dovecot/dovecot-userdb-ldap.conf
socket:
type: listen
client:
path: /var/run/dovecot/auth-client
mode: 432
user: mail
group: dovecot_auth
master:
path: /var/run/dovecot/auth-master
mode: 384
user: mail
group: mail
plugin:
quota_warning: storage=90%% /etc/dovecot/plugins/quota_warning.sh 90
quota: maildir:Mailbox quota
quota_rule: *:storage=500M
quota_rule2: Trash:storage=10%%
acl: vfile:/etc/dovecot/acl:cache_secs=3600
acl_shared_dict: proxy::acl
trash: /etc/dovecot/plugins/dovecot-trash.conf
expire: Trash 30 Spam 30
expire_dict: proxy::expire
autocreate: Drafts
autocreate2: Sent
autocreate3: Spam
autocreate4: Trash
autosubscribe: Drafts
autosubscribe2: Sent
autosubscribe3: Spam
autosubscribe4: Trash
sieve: ~/.dovecot.sieve
sieve_dir: ~/sieve
sieve_after: /etc/dovecot/sieve/default-after.sieve
sieve_extensions: +notify +spamtest
sieve_spamtest_status_type: score
sieve_spamtest_status_header: X-Spam-Scan-Score
sieve_spamtest_max_value: 10
antispam_trash: Trash
antispam_spam: Spam
antispam_allow_append_to_spam: no
antispam_mail_sendmail: /usr/bin/sa-learn
antispam_mail_sendmail_args: -u mail
antispam_mail_spam: --spam
antispam_mail_notspam: --ham
antispam_mail_tmpdir: /tmp
dict:
expire: sqlite:/etc/dovecot/plugins/expire.conf
acl: sqlite:/etc/dovecot/plugins/acl.conf
#cat /etc/dovecot/plugins/acl.conf
connect = /var/mail/acl.db
map {
pattern = shared/shared-boxes/user/$to/$from
table = user_shares
value_field = dummy
fields {
from_user = $from
to_user = $to
}
}
#cat /etc/dovecot/acl/.DEFAULT
user=admin at domain.com lrwstiekxa