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

нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-19 17:17:23
Nemesh
Добрый день.
Настройку производил в соответствии со статьей http://www.lissyara.su/?id=1173.
Столкнулся с трудностями при настройке exim. Конфиг exima взял без изменений. Вот что выходит:

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

220 *******  ESMTP Exim 4.69 Thu, 19 Feb 2009 15:57:49 +0200
mail from:user@domain.com
250 OK
rcpt to:user@domain.com
550-Verification failed for <user@domain.com>
550-Unknown user
550 Sender verify failed

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

Exim`s log:
2009-02-19 15:58:19 H=localhost [127.0.0.1] sender verify fail for <user@domain.com>: Unknown user
2009-02-19 15:58:19 H=localhost [127.0.0.1] F=<user@domain.com> rejected RCPT user@domain.com: Sender verify failed
При отправке с другого хоста:
2009-02-19 16:03:48 H=relay.domain.net  [192.168.0.1] F=<admin@domain.net> rejected RCPT <user@domain.com>: Unknown user

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

mysql log:
090219 15:58:19       1 Connect     exim@localhost on exim
                                1 Query       SELECT `domain` FROM `domain` WHERE `domain`='domain.com' AND `active`='1'
090219 16:01:50       1 Quit
так вот подскажите пожалуйста , где я чего прощелкал?

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-19 17:39:06
dikens3
Проверяется отправитель, его несуществует, происходит отлуп ибо нех кривые данные подставлять. Т.е. это 100% спам, когда отправитель не существует.

Вообще по тексту не очень понятно что происходит.. Всё зашифровано слишком..

Используйте user@mail.ru для обозначения пользователя из внешнего мира и user@mydomain1.ru для обозначения пользователей своего домена.

Система отладки в прилепленной теме есть, пользуйтесь.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-19 18:02:31
Nemesh
Пользователи в обоих случаях самые настоящие , домены тоже.

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

Exim`s log:
2009-02-19 15:58:19 H=localhost [127.0.0.1] sender verify fail for <user@mydomain1.ru>: Unknown user
2009-02-19 15:58:19 H=localhost [127.0.0.1] F=<user@mydomain1.ru> rejected RCPT user@mydomain1.ru: Sender verify failed
При отправке с другого домена :
2009-02-19 16:03:48 H=relay.mail.ru  [192.168.0.1] F=<user@mail.ru> rejected RCPT <user@mydomain1.ru>: Unknown user

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

mysql log:
090219 15:58:19       1 Connect     exim@localhost on exim
                                1 Query       SELECT `domain` FROM `domain` WHERE `domain`='mydomain1.ru' AND `active`='1'
090219 16:01:50       1 Quit

Так выглядит лог при отправке из другого домена.
090219 16:03:48       2 Connect     exim@localhost on exim
                      2 Query       SELECT `domain` FROM `domain` WHERE `domain`='mydomain1.ru' AND `active`='1'
                      2 Query       SELECT `domain` FROM `domain` WHERE `domain`='mail.ru' AND `active`='1'
                      2 Quit

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 10:29:36
dikens3
Роутеры не делают обращение к mysql для поиска пользователей в твоём домене. Следовательно User Unknown. Смотри роутеры, запросы к mysql и отладка оооочень поможет. В прилепленной теме есть пример!!!

Можно попробовать менее емкий метод проверки существования своих пользователей:

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

# exim -bt admin@mydomain2.ru
admin@mydomain1.ru
    <-- admin@mydomain1.ru               <-- это роутер(mysql_users), который будет выполнен.
    <-- admin@mydomain2.ru               <-- это роутер редиректит почту на другой домен
  router = mysql_users, transport = mysql_delivery

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 11:31:11
Nemesh
транспортами и роутами у меня , как предложено в статье занимается dovecot:

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

dovecot_delivery:
  driver = pipe
  command = /usr/lib/dovecot/deliver -d $local_part@$domain
  message_prefix =
  message_suffix =
  log_output
  delivery_date_add
  envelope_to_add
  return_path_add
  group = mail
  # mode = 0660
  user = exim

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

dovecot_user:
  driver = accept
  condition = ${lookup mysql{SELECT `goto` FROM `alias` WHERE `address`='${quote
_mysql:$local_part@$domain}' OR `address`='${quote_mysql:@$domain}'}{yes}{no}}
Возможно причина кроется в том что конфиг постфикса по умолчанию создает в бд

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

maildir=/var/mail/exim/%d/%n@%d
и глубина запроса dovecot не достаточна?

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 12:10:51
princeps
дамп БД, наверное, поможет. Что-то, судя по логам MySQL он у тебя только домен ищет, а юзера не ищет.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 12:39:50
dikens3
Не путайте (НЕ)СУЩЕСТВУЕТ (роутеры), ГДЕ (транспорты) и КАК доставить (dovecot).

Роутеры смотреть нужно.. Если хотите поделиться своими "светлыми" мыслями, попробуйте последовать советам, для начала.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 13:07:42
Nemesh
Прошу прощения , не совсем понял зачем дамп БД?

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 13:22:41
princeps
чтобы посмотреть, там ли экзим ищет имя пользователя и локальный домен

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 13:41:13
dikens3
princeps писал(а):чтобы посмотреть, там ли экзим ищет имя пользователя и локальный домен
Логи mysql говорят, что поиск пользователя в базе вообще не происходит.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 19:36:45
Nemesh
Воспользовался отладкой , нашел причину . Всем спасибо что с ориентировали.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-20 20:03:03
princeps
напиши в чем дело-то было. На предмет если кто-то с подобной проблемой столкнется.

Re: нужна подсказка exim+dovecot+mysql

Добавлено: 2009-02-23 12:03:47
Nemesh
Да вообщем описывать и нечего , банальная невнимательность . Путанина с конфигами вышла.