Назад | Перейти на главную страницу

Ошибка аутентификации Dovecot IMAP

Всякий раз, когда я пытаюсь подключиться к моему серверу Dovecot IMAP, он выдает мне сообщение о том, что аутентификация не удалась. Это сообщение от /var/log/mail.log файл:

Feb  7 15:22:17 celestine dovecot: imap-login: Disconnected (auth failed, 1 attempts in 2 secs): user=<celestine>, method=PLAIN, rip=::1, lip=::1, TLS, session=<QsPvvtbx5AAAAAAAAAAAAAAAAAAAAAAB>

Я попытался подключиться к программе веб-почты Roundcube, бит в журнале IMAP говорит следующее:

[07-Feb-2014 15:22:15 -0500]: [A4F2] S: * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready.
[07-Feb-2014 15:22:15 -0500]: [A4F2] C: A0001 ID ("name" "Roundcube" "version" "0.9.5" "php" "5.4.4-14+deb7u7" "os" "Linux" "command" "/")
[07-Feb-2014 15:22:15 -0500]: [A4F2] S: * ID NIL
[07-Feb-2014 15:22:15 -0500]: [A4F2] S: A0001 OK ID completed.
[07-Feb-2014 15:22:15 -0500]: [A4F2] C: A0002 AUTHENTICATE PLAIN AGNlbGVzdGluZQAxMDA5OTU=
[07-Feb-2014 15:22:17 -0500]: [A4F2] S: A0002 NO [AUTHENTICATIONFAILED] Authentication failed.

Если я попытаюсь подключиться к другой программе, она тоже не сработает.

У меня включен SSL, поэтому мой сервер IMAP работает на порте 993. Ниже приведен мой /etc/dovecot/dovecot.conf:

disable_plaintext_auth = no
mail_privileged_group = mail
mail_location = mbox:~/mail:INBOX=/var/mail/%u
userdb {
  driver = passwd
}
passdb {
  driver = passwd
}

protocols = "imap"

protocol imap {
  mail_plugins = " autocreate"
}
plugin {
  autocreate = Trash
  autocreate2 = Sent
  autosubscribe = Trash
  autosubscribe2 = Sent
}

service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
}

ssl = required
ssl_cert = </etc/ssl/localcerts/mail.pem
ssl_key = </etc/ssl/localcerts/mail.key

Я использую Debian Squeeze с установленным Postfix.

Во-первых, я предполагаю, что пользователь celestine (с паролем 100995) правильно настроен в вашей системе (просто проверьте, успешен ли вход в систему без дополнительных ошибок / предупреждений).

Согласно вашему dovecot.conf, вы настраиваете процесс аутентификации сервера, используя Поисковые базы данных с участием пароль. Это нормально, как пользовательская база данных, но с паролем как База паролей вы не можете получить пароль пользователя в Debian, как указано в официальной документации Dovecot:

hxxp: //wiki2.dovecot.org/AuthDatabase/Passwd:

Чаще всего используется как база данных пользователей. В настоящее время многие системы используют теневые пароли, поэтому обычно они не работают в качестве базы данных паролей.

Вы можете обойти эту проблему с помощью

passdb {
  driver = shadow
}

Другой вариант - использовать passdb с Passwd-файл, но я рекомендую вам настроить систему аутентификации Dovecot используя PAM.

Удачи, мегодин

Я обнаружил, что мой imap-сервер меняет все введенные имена пользователей на строчные, и поэтому ни один пользователь не назвал имя, которое, как он думал, я написал. Я сделал все, что написано в нижнем регистре, и он работал нормально.