Hello,
I'm running dovecot 2.1.9 and I'm trying to configure shared folders.
So, as described at http://wiki2.dovecot.org/SharedMailboxes/Shared I have configured a namespace like this:
namespace { type = shared separator = / prefix = shared/%%u/ location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u subscriptions = no list = yes }
In one user (user1) I have configured ACLs so another one (user2) has
access to a folder.
Now, I want to susbscribe user2 to this folder. The problem I have is
that whenever I try to list folders for this user (running thunderbird client) I get a panic and an error in the dovecot server (I have attached the complete log). The error says:
Nov 6 11:58:56 myotis30 dovecot: auth: Error: userdb(user1): client doesn't have lookup permissions for this user: userdb uid (113246) doesn't match peer uid (14585) (change userdb socket permissions) Nov 6 11:58:56 myotis30 dovecot: auth: Debug: master out: FAIL#0112 Nov 6 11:58:56 myotis30 dovecot: imap(user2): Error: user user1: Auth USER lookup failed Nov 6 11:58:56 myotis30 dovecot: imap(user2): Debug: auth input: Nov 6 11:58:56 myotis30 dovecot: imap(user2): Error: Couldn't create namespace 'shared/' for user user1: userdb didn't return a home directory, but plugin setting quota used it (%h): dict:User quota::file:%h/Maildir/dovecot.quota
It seems that imap process running for user2 is trying to a user lookup
that fails. So I have manually tried it
root@myotis30:/etc/dovecot/conf.d# sudo -u user2 doveadm user user2 userdb: user2 home : <homeDirectory> uid : 14585 gid : 404
root@myotis30:/etc/dovecot/conf.d# sudo -u user2 doveadm user user1 doveadm(user2): Error: user user1: Auth USER lookup failed doveadm(user2): Error: userdb lookup failed for user1
I have checked the socket permissions, but they are 0666 (if I'm
looking the right socket):
root@myotis30:/etc/dovecot/conf.d# ls -l /var/run/dovecot/auth-userdb srwxrwxrwx 1 dovecot root 0 nov 6 11:43 /var/run/dovecot/auth-userdb
In fact, I have tried to put all sockets with permissions 0666 and
0777, but the error persists.
Any idea?
-- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868889150 Fax: 868888337
On 6.11.2012, at 13.08, Angel L. Mateo wrote:
Nov 6 11:58:56 myotis30 dovecot: auth: Error: userdb(user1): client doesn't have lookup permissions for this user: userdb uid (113246) doesn't match peer uid (14585) (change userdb socket permissions) .. I have checked the socket permissions, but they are 0666 (if I'm looking the right socket):
root@myotis30:/etc/dovecot/conf.d# ls -l /var/run/dovecot/auth-userdb srwxrwxrwx 1 dovecot root 0 nov 6 11:43 /var/run/dovecot/auth-userdb
Nowadays the auth-userdb permissions are 0666, which add the extra check that you can only lookup yourself. Since you're not looking up yourself, you're getting the permission error about it.
In fact, I have tried to put all sockets with permissions 0666 and 0777, but the error persists.
If the socket is 0777 this error shouldn't happen. Note that you need to change it from dovecot.conf, chmod doesn't matter after startup anymore.
This will probably be helpful in future: http://hg.dovecot.org/dovecot-2.1/rev/c811aab61355
participants (2)
-
Angel L. Mateo
-
Timo Sirainen