View previous topic :: View next topic |
Author |
Message |
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sat Apr 29, 2017 12:47 pm Post subject: [solved] Cannot login to dovecot via Roundcube after update |
|
|
In /var/log/mail.log I see an entry indicating: Code: | dovecot[4372]: imap-login: Fatal: Dovecot version mismatch: Master is v2.2.27, imap-login is v2.2.29.1 (if you don't care, set version_ignore=yes) |
How can I repair this? I tried to set version_ignore=yes in /etc/dovecot/dovecot.conf but and restarting dovecot service, but this did not help.
Filed a bug: https://bugs.gentoo.org/show_bug.cgi?id=617000
Last edited by Elleni on Sun Apr 30, 2017 5:50 pm; edited 1 time in total |
|
Back to top |
|
|
Nick1 n00b
Joined: 29 Apr 2017 Posts: 1
|
Posted: Sat Apr 29, 2017 10:54 pm Post subject: |
|
|
It looks like a conflict between two Dovecot versions.
Did you proceed to an update recently?
I think that you should:
- ensure that you have only 1 version installed on your system
- if you just updated dovecot, then restart the running master daemon
(which is the old one) by using the "cmd /etc/rc.d/dovecot restart" because there could be incompatibilities after an update |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sat Apr 29, 2017 11:02 pm Post subject: |
|
|
Yeah, system was updatet recently, and also did emerge --depclean, so I dont think, there should be two versions installed. But how can I ensure? I restarted it by /etc/init.d/dovecot restart, and I even restarted whole server. After that, I tried if it helps to set the version_ignore=yes in /etc/dovecot/dovecot.conf and restarted service again but still no luck, so I filed the bug, as I did not know how to proceed further. |
|
Back to top |
|
|
cboldt Veteran
Joined: 24 Aug 2005 Posts: 1046
|
Posted: Sun Apr 30, 2017 12:05 am Post subject: |
|
|
Is everything in /usr/libexec/dovecot of the same date? It should all match the date of /usr/sbin/dovecot
I have "version_ignore = yes" in my config just the same. You can check if you have that set with `dovecot -n`
Also, you can compare the various modules (the one giving you a fit is "imap-login") using `doveconf -n -m imap-login` |
|
Back to top |
|
|
szatox Advocate
Joined: 27 Aug 2013 Posts: 3136
|
Posted: Sun Apr 30, 2017 12:10 am Post subject: |
|
|
Does it produce any errors in logs?
Check it's own log, grep syslog, try launching it manually from terminal with some flags for increased verbosity instead of regular service script.
I don't know dovecot (yet?), but reporting errors is a rather common practice in the blackscreen world.
It's gui artists who lost their sanity and have their applications exit without a goodbye when things go wrong. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sun Apr 30, 2017 7:33 am Post subject: |
|
|
Thanks for your replies.
The date is everywhere the same:
ls -l /usr/libexec/dovecot/
Code: |
insgesamt 2404
-rwxr-xr-x 1 root root 22816 27. Apr 18:38 aggregator
-rwxr-xr-x 1 root root 22744 27. Apr 18:38 anvil
-rwxr-xr-x 1 root root 403720 27. Apr 18:38 auth
-rwxr-xr-x 1 root root 10024 27. Apr 18:38 checkpassword-reply
-rwxr-xr-x 1 root root 147600 27. Apr 18:38 config
-rwxr-xr-x 1 root root 2839 27. Apr 18:38 decode2text.sh
lrwxrwxrwx 1 root root 11 27. Apr 18:39 deliver -> dovecot-lda
-rwxr-xr-x 1 root root 105344 27. Apr 18:38 dict
-rwxr-xr-x 1 root root 121248 27. Apr 18:38 director
-rwxr-xr-x 1 root root 10360 27. Apr 18:38 dns-client
-rwxr-xr-x 1 root root 581944 27. Apr 18:38 doveadm-server
-rwxr-xr-x 1 root root 18280 27. Apr 18:38 dovecot-lda
-rwxr-xr-x 1 root root 10024 27. Apr 18:38 gdbhelper
-rwxr-xr-x 1 root root 256904 27. Apr 18:38 imap
-rwxr-xr-x 1 root root 35552 27. Apr 18:38 imap-hibernate
-rwxr-xr-x 1 root root 39344 27. Apr 18:38 imap-login
-rwxr-xr-x 1 root root 22720 27. Apr 18:38 imap-urlauth
-rwxr-xr-x 1 root root 14720 27. Apr 18:38 imap-urlauth-login
-rwxr-xr-x 1 root root 55488 27. Apr 18:38 imap-urlauth-worker
-rwxr-xr-x 1 root root 30840 27. Apr 18:38 indexer
-rwxr-xr-x 1 root root 18552 27. Apr 18:38 indexer-worker
-rwxr-xr-x 1 root root 22744 27. Apr 18:38 ipc
-rwxr-xr-x 1 root root 55552 27. Apr 18:38 lmtp
-rwxr-xr-x 1 root root 22648 27. Apr 18:38 log
-rwxr-xr-x 1 root root 10088 27. Apr 18:38 maildirlock
-rwxr-xr-x 1 root root 51968 27. Apr 18:38 pop3
-rwxr-xr-x 1 root root 27056 27. Apr 18:38 pop3-login
-rwxr-xr-x 1 root root 93416 27. Apr 18:38 quota-status
-rwxr-xr-x 1 root root 18216 27. Apr 18:38 rawlog
-rwxr-xr-x 1 root root 39264 27. Apr 18:38 replicator
-rwxr-xr-x 1 root root 14120 27. Apr 18:38 script
-rwxr-xr-x 1 root root 14120 27. Apr 18:38 script-login
-rwxr-xr-x 1 root root 18784 27. Apr 18:38 ssl-params
-rwxr-xr-x 1 root root 55680 27. Apr 18:38 stats
-rwxr-xr-x 1 root root 10248 27. Apr 18:38 tcpwrap
-rwxr-xr-x 1 root root 10072 27. Apr 18:38 xml2text |
ls -l /usr/sbin/dovecot
Code: |
-rwxr-xr-x 1 root root 92040 27. Apr 18:38 /usr/sbin/dovecot
|
dovecot -n
Code: |
# 2.2.29.1 (e0b76e3): /etc/dovecot/dovecot.conf
# OS: Linux 4.8.17-hardened-r2 x86_64 Gentoo Base System release 2.3
auth_mechanisms = plain login cram-md5
listen = *
mail_location = maildir:~/.maildir
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/dovecot-sql.conf.ext
driver = sql
}
postmaster_address = postmaster@mydoma.in
protocols = imap lmtp
service auth-worker {
user = mail
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
user = postfix
}
unix_listener auth-userdb {
group = mail
mode = 0600
user = mail
}
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
}
service pop3-login {
inet_listener pop3s {
port = 0
ssl = yes
}
}
ssl_cert = </etc/ssl/dovecot/server.pem
ssl_key = # hidden, use -P to show it
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
version_ignore = yes |
doveconf -n -m imap-login
Code: |
# 2.2.29.1 (e0b76e3): /etc/dovecot/dovecot.conf
# OS: Linux 4.8.17-hardened-r2 x86_64 Gentoo Base System release 2.3
version_ignore = yes
|
Concerning error logs, all I could find is in /var/log/mail.log:
Code: | dovecot[4372]: imap-login: Fatal: Dovecot version mismatch: Master is v2.2.27, imap-login is v2.2.29.1 (if you don't care, set version_ignore=yes) |
I dont understand, what is meant by Master is v2.2.27 as the installed version is:
Code: | net-mail/dovecot
Latest version available: 2.2.29.1
Latest version installed: 2.2.29.1
Size of files: 5'833 KiB
Homepage: http://www.dovecot.org/
Description: An IMAP and POP3 server written with security primarily in mind
License: LGPL-2.1 MIT |
I did not find anything grep-ing dovecot and/or imap in dmesg.
I temporary set the variables auth_verbose=yes and auth_debug=yes in 10-logging.conf under /etc/dovecot/conf.d and restarted dovecot service.
Tailed mail.log reads:
Code: | Apr 30 09:38:22 hostname postfix/smtpd[17894]: connect from fqdn[ipadress]
Apr 30 09:38:22 hostname dovecot[17890]: auth: Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf.ext
Apr 30 09:38:22 hostname dovecot[17883]: master: Error: service(auth): command startup failed, throttling for 2 secs
Apr 30 09:38:22 hostname postfix/smtpd[17894]: fatal: no SASL authentication mechanisms
Apr 30 09:38:23 hostname postfix/master[6119]: warning: process /usr/libexec/postfix/smtpd pid 17894 exit status 1
Apr 30 09:38:23 hostname postfix/master[6119]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling
Apr 30 09:38:32 hostname dovecot[17883]: master: Warning: Killed with signal 15 (by pid=17921 uid=0 code=kill)
Apr 30 09:38:32 hostname dovecot[17951]: master: Dovecot v2.2.29.1 (e0b76e3) starting up for imap, lmtp (core dumps disabled)
Apr 30 09:38:46 hostname dovecot[17956]: auth: Debug: Loading modules from directory: /usr/lib64/dovecot/auth
Apr 30 09:38:46 hostname dovecot[17956]: auth: Debug: Module loaded: /usr/lib64/dovecot/auth/lib20_auth_var_expand_crypt.so
Apr 30 09:38:46 hostname dovecot[17956]: auth: Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf.ext
Apr 30 09:38:46 hostname dovecot[17951]: master: Error: service(auth): command startup failed, throttling for 2 secs
Apr 30 09:38:46 hostname dovecot[17956]: imap-login: Disconnected: Auth process broken (disconnected before auth was ready, waited 0 secs): user=<>, rip=127.0.0.1, lip=127.0.0.1, secured, session=<oOWNZV1OAot/AAAB>
Apr 30 09:40:03 hostname postfix/anvil[17897]: statistics: max connection rate 1/60s for (smtp:ipadress) at Apr 30 09:38:22
Apr 30 09:40:03 hostname postfix/anvil[17897]: statistics: max connection count 1 for (smtp:ipadress) at Apr 30 09:38:22
Apr 30 09:40:03 hostname postfix/anvil[17897]: statistics: max cache size 1 at Apr 30 09:38:22 |
|
|
Back to top |
|
|
cboldt Veteran
Joined: 24 Aug 2005 Posts: 1046
|
Posted: Sun Apr 30, 2017 10:15 am Post subject: |
|
|
When you do `/etc/init.d/dovecot stop`, all the doveco-related programs should stop. Make sure they do.
Code: | root@hypoid [3] 37 /root # ps aux | grep dovecot
root 15719 0.0 0.0 3880 2844 ? Ss Apr29 0:00 /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf
dovecot 15726 0.0 0.0 3560 692 ? S Apr29 0:00 dovecot/anvil
root 15727 0.0 0.0 3692 2284 ? S Apr29 0:00 dovecot/log
root 15729 0.0 0.0 4552 3204 ? S Apr29 0:00 dovecot/config
dovenull 15750 0.0 0.0 7136 5536 ? S Apr29 0:00 dovecot/imap-login
cboldt 15751 0.0 0.0 5984 3924 ? S Apr29 0:00 dovecot/imap
dovenull 20176 0.0 0.0 6472 3820 ? S 05:41 0:00 dovecot/imap-login
cboldt 20180 0.0 0.0 5220 3824 ? S 05:41 0:00 dovecot/imap
dovenull 20668 0.0 0.0 7136 5272 ? S 06:01 0:00 dovecot/imap-login
cboldt 20670 0.0 0.0 5264 3484 ? S 06:01 0:00 dovecot/imap
dovenull 20678 0.0 0.0 7136 5536 ? S 06:01 0:00 dovecot/imap-login
cboldt 20679 0.0 0.0 6372 4076 ? S 06:01 0:00 dovecot/imap
root@hypoid [3] 38 /root # /etc/init.d/dovecot stop
* Stopping dovecot ... [ok]
root@hypoid [3] 39 /root # ps aux | grep dovecot
root@hypoid [3] 40 /root # /etc/init.d/dovecot start
* Starting dovecot ... [ok]
root@hypoid [3] 41 /root # ps aux | grep dovecot
root 20964 0.0 0.0 3880 2736 ? Ss 06:10 0:00 /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf
dovecot 20971 0.0 0.0 3560 692 ? S 06:10 0:00 dovecot/anvil
root 20972 0.0 0.0 3692 2452 ? S 06:10 0:00 dovecot/log
root 20974 0.0 0.0 4552 3160 ? S 06:10 0:00 dovecot/config |
If, after `/etc/init.d/dovecot stop` there are still dovecot-related program running, kill them, then restart dovecot. The reason there are more dovecot-related programs "after awhile" is that dovecot starts what it needs based on login attempts and requests to serve email. None of that has happened immediately after restarting the dovecot service. |
|
Back to top |
|
|
cboldt Veteran
Joined: 24 Aug 2005 Posts: 1046
|
Posted: Sun Apr 30, 2017 10:30 am Post subject: |
|
|
I see a fatal error in dovecot startup ...
Code: | Apr 30 09:38:22 hostname dovecot[17890]: auth: Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf.ext
Apr 30 09:38:46 hostname dovecot[17956]: auth: Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf.ext
Apr 30 09:38:46 hostname dovecot[17956]: imap-login: Disconnected: Auth process broken ... |
The search for /etc/dovecot/dovecot-sql.conf.ext is driven by a setting in one of your configuration files. This was reported by 1dovecot -n` as ...
Code: | userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
} |
|
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sun Apr 30, 2017 4:02 pm Post subject: |
|
|
Thanks for mentioning it; I will check and compare files in /etc/dovecot with a backup and see if there is any difference. I usually make copies before updating config files with etc-update. I remember that when I executed it lately it only said merging trivial changes. Normaly I execute etc-update to see what files it would like to overwrite (and deny the overwrite), and then I copy them to have a backuped file, before I actually let etc-update run and replace the old config files with the actual ones; after that I manually put in the values from the copied files to the new ones. I will report back, what I find out.
And worst case - as it is a VPS - I will ask provider to restore to a backup taken 4 days ago, because in /var/log/messages I have found out, that the fatal imap-login message is shown on 27th april for the first time.
Last edited by Elleni on Sun Apr 30, 2017 6:09 pm; edited 1 time in total |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sun Apr 30, 2017 5:50 pm Post subject: |
|
|
After compairing and modifying dovecot-sql.conf.ext I still got errors, and as I saw differences also different files in /etc/dovecot/conf.d (ex. 10-mail.conf, 10-ssl.conf, 20-imap.conf and so on), I decided to copy over the whole dovecot folder and replace the actual /etc/dovecot with it. Now Mailserver is up and running again. When I'll have some spare time, I maybe will compare the files one by one, but for now case is solved.
Thanks for your inputs! |
|
Back to top |
|
|
|