Unable to authenticate on Dovecot - auth-userdb issue?
Alexander Dalloz
ad+lists at uni-x.org
Fri Jan 3 14:25:53 EET 2020
Am 03.01.2020 um 03:27 schrieb Mark ADAMS:
> Jan 02 18:47:37 shuttle dovecot[6744]: lda(root at shuttle)<6744><>: Error: auth-master: userdb lookup(root at shuttle): connect(/run/dovecot/auth-userdb) failed: Permission denied (euid=8(mail) egid=12(mail) missing +r perm: /run/dovecot/auth-userdb, dir owned by 0:0 mode=0755)
Run "namei -lv /run/dovecot/auth-userdb" to check the permissions of the
complete path. The auth-userdb socket actually is owned mail:mail
according to your error logging. Is dovecot member of the mail group?
Actually it does not match the config details you have pasted:
unix_listener auth-userdb {
group = dovecot
mode = 0600
user = vmail
}
On my side it looks like this and I have not custom configured that
part. The defaults are:
unix_listener auth-userdb {
group =
mode = 0666
user = $default_internal_user
}
So on my system the permissions look like this:
# namei -lv /var/run/dovecot/auth-userdb
f: /var/run/dovecot/auth-userdb
dr-xr-xr-x root root /
drwxr-xr-x root root var
drwxr-xr-x root root run
drwxr-xr-x root dovecot dovecot
srw-rw-rw- dovecot root auth-userdb
> Jan 02 18:47:37 shuttle dovecot[6744]: lda: Fatal: Internal error occurred. Refer to server log for more information.
> Jan 02 18:47:37 shuttle postfix/pipe[6743]: 6345D4A4A97: to=<root at shuttle>, relay=dovecot, delay=1.1, delays=1.1/0.01/0/0.06, dsn=4.3.0, status=deferred (temporary failure. Command output: lda(root at shuttle): Error: net_connect_unix(/run/dovecot/stats-writer) failed: Permission denied )
> ^C
>
>
>
> Note: this error references "/run/dovecot/auth-userdb". That isn't even supposed to be the location of that file. I have no idea why that location shows up. The correct location should be "/etc/dovecot/auth-userdb". The file does exist at that location.
Mark,
I have no idea why you expect the dovecot sockets to be located inside
/etc/dovecot/. /etc is the FHS location for configurations. /run or
/var/run (typically a symlink on modern linux distributions) is the
right location for runtime files like service sockets.
You say /etc/dovecot/auth-userdb exists. Am I correct to guess that you
have created that manually with whatever content?
Alexander
More information about the dovecot
mailing list