Problem solved!
I installed 2.3.18 (9dd8408c18), and now everything is working.
I guess that there must be things in 2.2.36-4 which don't work properly under Debian-11.
Excelsior!
-- hippoman@gmail.com Take a hippopotamus to lunch today.
On Mon, May 30, 2022 at 3:18 PM Hippo Man hippoman@gmail.com wrote:
I've been running dovecot 2.2.36.4 (baf9232c1) on my Debian-8 host for a long time with no problems. I am trying to move my email server to a Debian-11 host, and I have Dovecot configured exactly the same way that I have it configured under Debian-8. However, when I try to connect to that server via imap, I always get the following error:
2022.05.30-18:17:21 imap-login: Info: Disconnected: Auth process broken (disconnected before auth was ready, waited 0 secs): user=<>, rip=::1, lip=::1, secured, session=<2+nKqj7g4t4AAAAAAAAAAAAAAAAAAAAB>
The output of "dovecot -n" appears at the bottom of this message.
I'm using mysql on the Debian-8 server for my authentication database, and I'm using mariadb on the Debian-11 server. The contents of the database on the new, Debian-11-based server are exactly the same as those on the Debian-8 server.
These are the contents of /opt/local/etc/dovecot/dovecot-sql.ext with the comments removed. I can manually run the following queries against the database with a valid login ID, and these queries succeed ...
driver = mysql
connect = host=127.0.0.1 user=postfix password=XXXXXXXX dbname=postfix
default_pass_scheme = CRYPT
password_query = SELECT username AS user, domain, password FROM mailbox WHERE (username = '%u' OR find_in_set('%u', loginid) > 0) AND active = 1 user_query = SELECT concat('/var/vmail/', maildir) AS home, 1003 AS uid, 1003 AS gid FROM mailbox WHERE (username = '%u' OR find_in_set('%u', loginid) > 0) AND active = 1
Also ...
% ls -Flas /var/run/dovecot/auth-userdb 0 srw-rw-rw- 1 dovecot root 0 May 30 18:30 /var/run/dovecot/auth-userdb= % ls -Flas /opt/local/etc/dovecot/dovecot-master-users-passwords 4 -rw-rw-r-- 1 root dovecot 36 Dec 16 2018 /opt/local/etc/dovecot/dovecot-master-users-passwords % ls -Flas /opt/local/etc/dovecot/ad-hoc-userdb 4 -rw-rw-r-- 1 root root 416 May 7 14:53 /opt/local/etc/dovecot/ad-hoc-userdb % ls -Flas /opt/local/etc/dovecot/dovecot-master-users-passwords 4 -rw-rw-r-- 1 root dovecot 36 Dec 16 2018 /opt/local/etc/dovecot/dovecot-master-users-passwords
When I start up dovecot, the following line appears at the bottom of /var/log/mailclient.log ... 2022.05.30-18:31:37 master: Info: Dovecot v2.2.36.4 (baf9232c1) starting up for imap, pop3, lmtp, imap, pop3 (core dumps disabled)
However, if I then run "telnet localhost 143", the following lines appear at the end of /var/log/mailclient.log ... 2022.05.30-18:32:44 master: Error: service(auth): command startup failed, throttling for 2 secs 2022.05.30-18:32:44 auth: Fatal: master: service(auth): child 235327 killed with signal 11 (core dumps disabled) 2022.05.30-18:32:44 imap-login: Info: Disconnected: Auth process broken (disconnected before auth was ready, waited 0 secs): user=<>, rip=::1, lip=::1, secured, session=<8ezN4T7gJOAAAAAAAAAAAAAAAAAAAAAB>
The exact, same actions on my Debian-8 host do not fail.
And here is the output from "dovecot -n". As you can see, all "verbose" and debug-related options are set to "yes". Thank you for any suggestions you might be able to offer:
# 2.2.36.4 (baf9232c1): /opt/local/etc/dovecot/dovecot.conf # OS: Linux 5.10.0-14-amd64 x86_64 Debian 11.3 ext4 # Hostname: my.hostname.com 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 base_dir = /var/run/dovecot/ disable_plaintext_auth = no log_path = /var/log/mailclient.log log_timestamp = "%Y.%m.%d-%H:%M:%S " mail_debug = yes mail_location = maildir:/var/vmail/%d/%n/ namespace inbox { inbox = yes list = 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 = INBOX. separator = . } passdb { args = /opt/local/etc/dovecot/dovecot-master-users-passwords driver = passwd-file master = yes pass = yes } passdb { args = /opt/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } passdb { args = scheme=plain username_format=%u /opt/local/etc/dovecot/ad-hoc-userdb driver = passwd-file } plugin { sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } postmaster_address = postmaster@my.hostname.com protocols = imap pop3 lmtp imap pop3 service imap-login { inet_listener imap { port = 143 } inet_listener imaps { port = 993 ssl = yes } } service imap { executable = imap postlogin } service pop3 { executable = pop3 postlogin } service postlogin { executable = script-login -d rawlog } ssl_cert =
-- hippoman@gmail.com Take a hippopotamus to lunch today.