Dovecot, авторизация через файл

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Rayman
ефрейтор
Сообщения: 61
Зарегистрирован: 2016-03-29 6:32:50
Откуда: Siberian

Dovecot, авторизация через файл

Непрочитанное сообщение Rayman » 2016-12-02 12:26:24

Делаю авторизацию на почтовом сервере(exim4+dovecot) с аутентификацией виртуальных юзеров через файл.
Конфиг dovecot:

Код: Выделить всё

disable_plaintext_auth = no
auth_username_format = %Lu
auth_verbose = yes
auth_mechanisms = plain login
!include auth-passwdfile.conf.ext
log_path = /var/log/dovecot.log
info_log_path  = /var/log/dovecot-info.log
mail_location = maildir:/var/mail/%u
ssl = no
auth-passwdfile.conf

Код: Выделить всё

passdb {
  driver = passwd-file
  args = scheme=plain username_format=%u /etc/dovecot/passwd
}

userdb {
  driver = passwd-file
  args = username_format=%u /etc/dovecot/passwd
{

passwd

Код: Выделить всё

zxc:{PLAIN}hello123
Но когда авторизуюсь в почтовом клиенте, пишет следующее:
dovecot.log

Код: Выделить всё

Feb 13 13:20:35 auth: Error: passwd-file /etc/dovecot/passwd: User zxc is missing userdb info
Feb 13 13:20:35 auth-worker(13988): Error: passwd-file /etc/dovecot/passwd: User zxc is missing userdb info
Feb 13 13:20:37 imap(zxc): Fatal: Level not defined for user [zxc]
Feb 13 13:20:39 imap(zxc): Fatal: Level not defined for user [zxc]
Feb 13 13:21:11 imap(zxc): Fatal: Level not defined for user [zxc]
Feb 13 13:21:13 imap(zxc): Fatal: Level not defined for user [zxc]
Feb 13 13:29:21 auth: Error: passwd-file /etc/dovecot/passwd: User zxc is missing userdb info
Feb 13 13:29:21 auth-worker(14293): Error: passwd-file /etc/dovecot/passwd: User zxc is missing userdb info
Feb 13 13:29:21 auth-worker(14294): Error: passwd-file /etc/dovecot/passwd: User zxc is missing userdb info
dovecot-info.log

Код: Выделить всё

Feb 13 13:21:15 auth: Info: passwd-file(zxc@mail.net,192.168.0.15,<CAW/x9iZdwDAqAAP>): unknown user
Feb 13 13:21:19 auth-worker(13988): Info: pam(zxc@mail.net,192.168.0.15): pam_authenticate() failed: Authentication failure (password mismatch?)
Поправьте что сделал ни так?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/


Rayman
ефрейтор
Сообщения: 61
Зарегистрирован: 2016-03-29 6:32:50
Откуда: Siberian

Dovecot, авторизация через файл

Непрочитанное сообщение Rayman » 2016-12-08 7:39:16

xM писал(а):http://wiki.dovecot.org/AuthDatabase/PasswdFile
http://wiki.dovecot.org/UserDatabase#Userdb_settings
+ подробности в отладке

Код: Выделить всё

auth_verbose = default
Вот полный вывод команды doveconf -n:

Код: Выделить всё

root@mx:~# doveconf -n
# 2.1.7: /etc/dovecot/dovecot.conf
auth_mechanisms = plain login
auth_verbose = yes
debug_log_path = /var/log/dovecot-debug.log
disable_plaintext_auth = no
info_log_path = /var/log/dovecot-info.log
listen = 192.168.0.15
log_path = /var/log/dovecot.log
mail_location = maildir:/var/mail/%u
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 {
  driver = pam
}
passdb {
  args = scheme=plain username_format=%u /etc/dovecot/passwd
  driver = passwd-file
}
protocols = imap
service auth {
  unix_listener auth-client {
    mode = 0600
    user = Debian-exim
  }
}
ssl = no
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
userdb {
  driver = passwd
}
userdb {
  args = username_format=%u /etc/dovecot/passwd
  driver = passwd-file
}
что здесь нужно изменить или добавить?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Dovecot, авторизация через файл

Непрочитанное сообщение xM » 2016-12-08 18:17:48

Rayman писал(а): passdb {
  driver = pam
}
passdb {
  args = scheme=plain username_format=%u /etc/dovecot/passwd
  driver = passwd-file
}
Так у вас PAM или passwd-file ?
IT voodoo blog https://kostikov.co