Проблема с Dovecot

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-22 23:47:55

Поставил связку exim+dovecot+mysql по инструкции в стате http://www.lissyara.su/?id=1173. Почта заходила. В /var/mail/exim появилась папочка my.domen в которой папочки юзеров. Почта туда падает.
При попытки получить ее от туда батом по pop3 происходит облом. По imap я еще не пробовал.
В логе :
dovecot: Aug 23 00:09:36 Info: pop3-login: Disconnected (auth failed, 1 attempts): user=<aaa>, method=PLAIN, rip=9.11.8.22, lip=1.2.3.4
подконнектится телнетом
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK dovecot MUA ready
user aaa
+OK
pass bbbb
-ERR Authentication failed.
Connection closed by foreign host.
Все кругом обшарил но не нашел причин.
Даю условия задачи:
Система: FreeBSD mail.aol.spb.ru 7.0-RELEASE-p3 FreeBSD 7.0-RELEASE-p3 #1: Sat Aug 9 14:46:13 MSD 2008
Dovecot 1.1.2
dovecot.conf

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

base_dir = /var/run/dovecot/
protocols = imap pop3
listen = *
ssl_disable = yes
disable_plaintext_auth = no
shutdown_clients = yes
log_path = /var/log/dovecot.log
log_timestamp = "%b %d %H:%M:%S "
login_dir = /var/run/dovecot/login
login_chroot = yes
login_user = dovecot
login_process_size = 64
login_process_per_connection = yes
login_processes_count = 3
login_max_processes_count = 64
login_greeting = dovecot MUA ready
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
login_log_format = %$: %s
verbose_proctitle = yes
first_valid_uid = 25
first_valid_gid = 0
mail_access_groups = mailmull
mail_debug = yes
mail_location = maildir:/var/mail/exim/%d/%n
umask = 0077
protocol imap {
 imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
}
protocol pop3 {
 pop3_uidl_format = %08Xu%08Xv
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
}
protocol lda {
  postmaster_address = system@domen.ru
  auth_socket_path = /var/run/dovecot/auth-master
}
auth default {
  mechanisms = plain
   socket listen {
     master {
       path = /var/run/dovecot/auth-master
       mode = 0600
       user = mailnull
       #group = mail
     }
   }
 passdb sql {
    args = /usr/local/etc/dovecot-sql.conf
  }
userdb sql {
 args = /usr/local/etc/dovecot-sql.conf
  }
user = root
}
plugin {
}
Соответсвенно dovecot-sql.conf

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

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'
Буду очень презнателен за подсказки ибо у меня идеи кончились что копать..

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2520 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Re: Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-23 0:36:23

Похоже делов кривом запросе из базы.. Щас прописал в качестве имени aaa@my.domen и все заработало...
Как жеолжен выглядеть этот запрос черт его побери???

lerryc
сержант
Сообщения: 191
Зарегистрирован: 2008-07-10 7:28:37
Откуда: Vladivostok

Re: Проблема с Dovecot

Непрочитанное сообщение lerryc » 2008-08-23 15:08:21

NickSmith писал(а):Похоже делов кривом запросе из базы.. Щас прописал в качестве имени aaa@my.domen и все заработало...
Как жеолжен выглядеть этот запрос черт его побери???

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

Соответсвенно dovecot-sql.conf

Код: Выделить всё
    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'


Буду очень презнателен за подсказки ибо у меня идеи кончились что копать..
WHERE `username` = '%n'
не пробовал?
машина думать не может, машина должна ехать

Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Re: Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-23 15:58:40

lerryc писал(а):
WHERE `username` = '%n'
не пробовал?
Пробовал.
Вот что он пишет в логе:

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

dovecot: Aug 23 01:10:30 Info: auth-worker(default): sql(ааа,8.11.8.2): query: SELECT `username` as `user`, `password` FROM `mailbox` WHERE `username` = 'ааа@' AND `active`='1'
dovecot: Aug 23 01:10:30 Info: auth-worker(default): sql(ааа,8.11.8.2): unknown user
dovecot: Aug 23 01:10:30 Info: auth(default): new auth connection: pid=72710
dovecot: Aug 23 01:10:32 Info: auth(default): client out: FAIL  1       user=ааа
В базе у меня `username` сидит в виде username@my.domen. Я поковырялся с запросами. Такой запрос ничего не находит естественно. Если зделать запрос в виде : SELECT `username` as `user`, `password` FROM `mailbox` WHERE `username` LIKE 'ааа@' AND `active`='1' то тогда он находит. Но как я понимаю, в таком виде я лишаюсь возможности обслуживать несколко доменов.
В принципе меня это не очень напрягло. Я могу и username@my.domen для логина задать в клиентах. У меня их не очень много. Но Хочется добится, что бы по имени пользователя работало.
Ведь до этого поставил courier-imap. Там то это работало. Тут повелся на убеждения Лиса и решил пойти по пути Dovecot. Уже голова не соображает ничего от нескольких дней войны с почтой..
Каков же должен быть этот запрос в конфиге??Хочется победить..

Гость
проходил мимо

Re: Проблема с Dovecot

Непрочитанное сообщение Гость » 2008-08-24 17:49:18

У меня такая проблема была из-за того, что Postfixadmin писал в базу пароль хэшируя его в мд5. Я так понимаю, это опция по умолчанию идет в его новой версии... Отключил соответствующую опцию в ПФА, а пароль перебил ручками в базе на нехэшировынный - проблема исчезла...

Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Re: Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-25 0:53:18

Гость писал(а):У меня такая проблема была из-за того, что Postfixadmin писал в базу пароль хэшируя его в мд5. Я так понимаю, это опция по умолчанию идет в его новой версии... Отключил соответствующую опцию в ПФА, а пароль перебил ручками в базе на нехэшировынный - проблема исчезла...
У меня все стоит в "открытом" виде.
Помоему когда в PMA ты делаеш вставку в таблицу, там можно выбрать в каком виде она будет сделана.
А так я ящики завожу через PFA.
Там как я понимаю дело в запросе. Судя по логу. Башка уже совсем не варит. Щас приходится аж два сервера на exim переводить. Так что нет спокойного времени, что бы с этим покапатся...

Аватара пользователя
gruy
рядовой
Сообщения: 33
Зарегистрирован: 2008-08-14 16:01:33

Re: Проблема с Dovecot

Непрочитанное сообщение gruy » 2008-08-26 10:33:28

Если хочешь обслуживать несколько доменов, то в любом случае придется у клиентов в качестве имени указывать user@domen, иначе при совпадении имени в разных доменах припроверке только имени что вернет запрос?

Также заметил, что Dovecot в процессе авторизации отбрасывал доменную часть от логина пользователя, поэтому при авторизации по двум sql запросам во втором подставлялось только имя без домена. Пришлось использовать prefetch в настройках и один запрос вместо двух.

Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Re: Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-26 15:51:16

Тут еще обнаружил, что перестали приходит системные сообщения. У меня раньше раз в сутки сваливался стандартный отчет на рута. Теперь тишина, хотя все алиасы я прописал...Почта на рута нормально проходит. Я не очень вникал где и как этот отчет формируется...
Кто нибудь знает что копать...???
P.S.
Так вроде связка exim+dovecot жужжит нормально, хотя только со временем будет ясно на сколько нормально...Прав был Лис, когда всех убеждал вместа курьера-имап втыкать довекот.. Оно дейсвтительно "сипатишней" выглядит и проблем меньше при настройке.
Теперь вот осталось определится с антиспам фильтром и будет полный шоколад...


Аватара пользователя
NickSmith
ефрейтор
Сообщения: 56
Зарегистрирован: 2008-08-10 15:08:47

Re: Проблема с Dovecot

Непрочитанное сообщение NickSmith » 2008-08-26 20:53:10

Еще до детального изучения руки не дошли..Я щас озабочен прикручиванием dspam а к системе...
Как я понимаю, системные сообщения отсылают переодические процессы.. Я пробежася по скриптам, но особо не нашел, как там выглядит отправка отчета на рута...Или я не в ту сторону копаю...