Subject: dovecot fails to authenticate system users

From: David Matthews <[email-masked]>
Date: Sun, 30 Jan 2022 13:50:20 +0000 (GMT)

Package: dovecot-imapd  1:2.3.13+dfsg1-2 

This *seems to be* a devuan problem on version 4 as there is no similar problem on debian 11 with identical config (see dovecot -n below). It commenced after a dist-upgrade from devuan 3 on *two* separate machines.

I've tried to get help with this on the dovecot list, but no one was able to find the problem; lack of devuan experience was sited. I also tried creating a new system user on the version 4 system, but the problem is the same. It appears that dovecot is unable to read /etc/shadow as it is possible to create virtual users as per
https://wiki.dovecot.org/HowTo/SimpleVirtualInstall

cat /etc/devuan_version
chimaera

telnet localhost 143
Trying 127.0.0.1...
Connected to bulawayo.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ STARTTLS AUTH=PLAIN] Dovecot (Debian) ready.
a login david xxxxxxxxx
a NO [UNAVAILABLE] Temporary authentication failure. [bulawayo:2022-01-29 21:46:29]

sudo dovecot -n
[sudo] password for david:
# 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.13 (cdd19fe3)
# OS: Linux 5.10.0-11-amd64 x86_64 Debian 11.1
# Hostname: bulawayo
auth_debug = yes
auth_verbose = yes
mail_location = mbox:~/mail:INBOX=/var/mail/%u
mail_privileged_group = mail
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
}
passdb {
args = /etc/dovecot/passwd
driver = passwd-file
}
passdb {
driver = pam
}
protocols = " imap"
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
ssl_cert = </etc/dovecot/private/dovecot.pem
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
args = uid=vmail gid=vmail home=/home/vmail/%u
driver = static
}
userdb {
driver = passwd
}

nb the problem existed before the first userdb block was added for virtual users.

--
David Matthews
[email-masked]

---

From: Mark Hindley <[email-masked]>
Date: Tue, 14 Feb 2023 08:30:13 +0000

Control: tags -1 moreinfo

David,

Is this still an issue or did you find a solution?

Thanks

Mark

---

From: Mark Hindley <[email-masked]>
Date: Tue, 14 Feb 2023 09:41:52 +0000

David,

On Tue, Feb 14, 2023 at 08:50:39AM +0000, David Matthews wrote:
> I run Devuan on my laptop which I use for development, but Debian on the VM
> that hosts my mail exchanger. I've not done any development for quite a few
> months, so I can't be definitive, but as above, presumably the problem is
> still in Devuan (but not Debian).

None of the packages are different. Devuan uses Debian's dovecot packages
directly without recompilation, so it is difficult to see why there is an issue
on Devuan but not Debian.

> I could make sure everything is up to date and run up my development
> environment and check if that would be helpful.

Yes, very. Thanks.

Mark