Страница 1 из 1

dovecot - sql авторизация

Добавлено: 2008-10-30 19:10:55
icb
Установил dovecot. Авторизация не проходит... постоянно "ERR Authentication failed" :(
В логах

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

query: SELECT `username` as `user`, `password` FROM `mailbox` WHERE `username` = 'test@' AND `active`='1'
но по идее должно быть test@test.com
В чем может быть проблема?

dovecot-sql.conf

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

#!/bin/sh

driver = mysql
connect = host=localhost dbname=exim user=exim password=exim
default_pass_scheme = PLAIN

password_query = SELECT `username` as `user`, `password` FROM `mailbox` WHERE `username` = '%n@%d' AND `active`='1'

user_query = SELECT `maildir` AS `home`, 26 AS `uid`, 26 AS `gid` FROM `mailbox` WHERE `username` = '%n@%d' AND `active`='1'

Re: dovecot - sql авторизация

Добавлено: 2008-10-30 20:02:09
Alex_hha
В почтовом клиенте точно полное имя прописано?

Re: dovecot - sql авторизация

Добавлено: 2008-10-30 20:03:59
icb
Да, пробовал и телнетом.

В конфиге dovecot.conf есть строка

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

login_log_format_elements = user=<%u@%d> method=%m rip=%r lip=%l %c
но в логе все равно

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

dovecot: pop3-login: Aborted login (auth failed, 1 attempts): user=<test@>, method=PLAIN, ...

Re: dovecot - sql авторизация

Добавлено: 2008-10-31 9:12:56
ev
login_log_format_elements = user=<%u@%d> method=%m rip=%r lip=%l %c
тут скорее всего ошибка надо либо просто %u, либо %n@%d

если в обоих логах не пишется домен, то скорее всего надо копать в основном конфиге - его бы глянуть
хотя, насколько я могу судить, там вроде может быть только в 1 месте косяк - параметр auth_username_format

Re: dovecot - sql авторизация

Добавлено: 2008-10-31 22:52:08
Covax
ev писал(а):там вроде может быть только в 1 месте косяк - параметр auth_username_format
Вот вот. Сам попался. По дефолту стоит

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

auth_username_format = %Lu
т.е. имя пользователя переводится в lowcase.
Если надо, чтобы было с доменом, то стоит или отключить эту функцию или установить в

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

auth_username_format = %Ln

Re: dovecot - sql авторизация

Добавлено: 2008-10-31 23:41:47
ev
хм... вроде наоборот... именно установка в %Ln портит смысл переменной
ведь n - это только имя (перед @)
корректно либо вообще убрать, либо установить в %Lu
%u - username
%n - user part in user@domain, same as %u if there's no domain
%d - domain part in user@domain, empty if there's no domain
сейчас покопался... и правда - виной тому сам порт :(
мало того еще не обновился до последней версии (устраняющей уязвимость), так и еще в нем присутствует патч

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

-#auth_username_format =
+auth_username_format = %Ln
даже не знаю зачем это сделано... многие наверное "полегли" на этом пункте (особенно если не вчитываться в параметры)