У нас уже больше года работает малоиспользуемый почтовый сервер, но сегодня он начал время от времени не аутентифицировать пользователей, а теперь он даже прекратил попытки аутентификации.
Сообщения в почтовом журнале:
www imapd: authdaemon: s_connect() failed: Connection refused
www imapd: [Hint: perhaps authdaemond is not running?]
www imapd: LOGIN FAILED, user=XXX, ip=[::ffff:aaa.bbb.ccc.ddd]
www imapd: authentication error: Connection refused
Но насколько я понимаю, все работает, просто не работает.
Раньше он полностью перебирал каждый метод аутентификации, прежде чем нашел подходящий, а теперь, по-видимому, не пытается пройти ни один из них.
netstat -napt выводит:
tcp 0 0 :::143 :::* LISTEN 25051/couriertcpd
ps alx выводит:
5 0 25087 1 20 0 3952 284 - S ? 0:00 /usr/sbin/courierlogger -pid=/var/spool/authdaemon/pid -start /usr/libexec/courier-authlib/authdaemond
4 0 25088 25087 20 0 61320 1472 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
1 0 25089 25088 20 0 61320 356 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
1 0 25090 25088 20 0 61320 360 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
1 0 25091 25088 20 0 61320 368 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
1 0 25092 25088 20 0 61320 368 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
1 0 25093 25088 20 0 61320 368 - S ? 0:00 /usr/libexec/courier-authlib/authdaemond
Я перезапускал (больше раз, чем мне хотелось бы вспомнить) courier-authlib и courier-imap, а теперь скопировал файл конфигурации распространения /etc/authlib/authdeamonrc.dist поверх используемого файла / etc / authlib / authdaemonrc, хотя я не думаю, что его все равно меняли.
Подключение по Telnet к порту 143 imap как локально, так и с удаленного клиента, затем ввод
a login username password
Просто дает мне сообщение:
* BYE Temporary problem, please try again later
Connection closed by foreign host.
и те же сообщения об отказе в соединении в журнале электронной почты, о которых я упоминал в первой части этого сообщения.
Это старая (~ 2 года) система, поэтому различные программы будут далеки от последних версий, но она долгое время работает нормально, так что это не может быть просто проблемой кода.
Если бы кто-нибудь мог дать мне какие-либо подсказки о том, как я могу продолжить процесс диагностики, я был бы очень признателен.
Это строка из / etc / authlib / authdaemonrc, которую authdaemon, похоже, игнорирует:
authmodulelist="authuserdb authpam authpgsql authldap authmysql authcustom authpipe"
Взгляните на конфигурационный файл authdaemonrc (если я правильно помню). Он должен содержать подробную информацию о том, как он аутентифицируется. Если он, например, использует ldap, посмотрите, есть ли еще ваш ldap-сервер, если он использует mysql ... Исправьте это, и вы, вероятно, исправите свою проблему.