Решено: Exim&Dovecot, проблема доставки писем (письма не доходят до локального адресата)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

Rovnyi
Сообщения: 46
ОС: Debian Lenny

Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

суть дела в том, что была настроена связка Exim+Dovecot. Локальной доставкой занимается lda довекота. все работало прекрасно до вчерашнего дня. готов поклясться что ничего не менял. письма уходят на внешние домены, к примеру на рамблер и гмайл, но при попытке отправить на адрес домена on-line.kz(мой домен) письма не доставляются. они доходят, обрабатываются екзимом и выпадает ошибка. вот часть логов с mainlog екзима:
2009-08-25 15:55:01 1Mfsk1-0002sd-CE <= rovnyi@on-line.kz H=(microsofd06a64) [192.168.0.106] P=esmtp S=2880 id=003c01ca2569$ab860000$02920000$@kz
2009-08-25 15:55:01 1Mfsk1-0002sd-CE ** | "/usr/lib/dovecot/deliver" -d ilya <Ilya@on-line.kz> R=userforward T=address_pipe: Child process of address_pipe transport returned 75 (could mean temporary error) from command: /usr/lib/dovecot/deliver
2009-08-25 15:55:01 1Mfsk1-0002sj-EB <= <> R=1Mfsk1-0002sd-CE U=mailnull P=local S=3962
2009-08-25 15:55:01 1Mfsk1-0002sd-CE Completed

думал все дело в правах, проверил права на все, что есть. стоят, как выставлял. вот права:
root@on-line:~# ls -l /var/run/dovecot/
итого 8
srw-rw---- 1 dovecot mail 0 Авг 25 15:55 auth-client
srw-rw---- 1 mail root 0 Авг 25 15:55 auth-master
srw------- 1 root root 0 Авг 25 15:55 auth-worker.11110
srwxrwxrwx 1 root root 0 Авг 25 15:55 dict-server
drwxr-x--- 2 root dovecot 4096 Авг 25 15:55 login
-rw------- 1 root root 6 Авг 25 15:55 master.pid
root@on-line:~# ls -l /var/log/dovecot.log /var/log/dovecot-deliver.log
-rwxrwx--- 1 dovecot mail 0 Авг 25 11:53 /var/log/dovecot-deliver.log
-rw-r----- 1 dovecot mail 48723008 Авг 25 16:19 /var/log/dovecot.log

конфиги экзима и довекота, касающиеся локальной доставки писем и доставки в общем
екзим:
begin transports


# This transport is used for delivering messages over SMTP connections.

remote_smtp:
driver = smtp

ot_delivery:
driver = pipe
command = /usr/lib/dovecot/deliver
# use /usr/lib/dovecot/deliver if using Debian's package
message_prefix =
message_suffix =
log_output
delivery_date_add
envelope_to_add
return_path_add
#user = mail
#group = mail
#mode = 0660
This transport is used for local delivery to user mailboxes in traditional
# BSD mailbox format. By default it will be run under the uid and gid of the
# local user, and requires the sticky bit to be set on the /var/mail directory.
# Some systems use the alternative approach of running mail deliveries under a
# particular group instead of using the sticky bit. The commented options below
# show how this can be done.

dovecot_delivery:
driver = pipe
command = /usr/lib/dovecot/deliver
# use /usr/lib/dovecot/deliver if using Debian's package
message_prefix =
message_suffix =
log_output
delivery_date_add
envelope_to_add
return_path_add
#user = mail
#group = mail
#mode = 0660


довекот:
# It's possible to export the authentication interface to other programs:
socket listen {
#master {
# Master socket provides access to userdb information. It's typically
# used to give Dovecot's local delivery agent access to userdb so it
# can find mailbox locations.
#path = /var/run/dovecot/auth-master
#mode = 0660
# Default user/group is the one who started dovecot-auth (root)
#user = dovecot
#group = mail
#}
client {
# The client socket is generally safe to export to everyone. Typical use
# is to export it to your SMTP server so it can do SMTP AUTH lookups
# using it.
path = /var/run/dovecot/auth-client
mode = 0660
user = dovecot
group = mail
}
}

## dovecot-lda specific settings
##
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0660
user = dovecot # User running Dovecot LDA
#group = mail # Or alternatively mode 0660 + LDA user in this group
}
}

}

пользователи авторизуются, посылают письма. письма доходят на внешние адреса, но никак при локальной доставке. форвард файлы в порядке. не знаю куда копать, прошу помощи и совета. возможно я где-то не вижу какую-нибудь мелочь. если нужна будет дополнительная информация выложу сразу, как прочитаю ответ. заранее спасибо за помощь.

З.Ы: также не идут записи в лог деливера довекота, хотя права выставлены по сути нормально.
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение arkhnchul »

а если попробовать руками через довекот доставить - на что он ругнется?
Losing is fun!
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение arkhnchul »

еще maillog посмотреть можно
Losing is fun!
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

а если попробовать руками через довекот доставить - на что он ругнется?

я бы так и сделал, если бы знал как. у меня эта мысль возникла первой, но поискав, я ничего не нашел по этой теме(не очень хорошо поиск идет). может быть вы подскажете, какой командой можно это сделать?
еще maillog посмотреть можно

это конечно. вот его хвост:
Aug 25 10:51:34 on-line spamd[2626]: logger: removing stderr method
Aug 25 10:51:37 on-line spamd[2679]: spamd: server started on port 783/tcp (running version 3.2.5)
Aug 25 10:51:37 on-line spamd[2679]: spamd: server pid: 2679
Aug 25 10:51:37 on-line spamd[2679]: spamd: server successfully spawned child process, pid 2892
Aug 25 10:51:37 on-line spamd[2679]: spamd: server successfully spawned child process, pid 2893
Aug 25 10:51:37 on-line spamd[2679]: prefork: child states: II
Aug 25 11:11:29 on-line exim[5222]: 2009-08-25 11:11:29 H=(brasiltelecom.net.br) [201.34.243.226] F=<pheromone73@bk.ru> rejected RCPT <ilya@on-line.kz>: REJECTED - 201.34.243.226 is blacklisted at bl.spamcop.net; Blocked - see http://www.spamcop.net/bl.shtml?201.34.243.226
Aug 25 11:11:29 on-line exim[5222]: 2009-08-25 11:11:29 Cannot open main log file "/var/log/exim4/mainlog": Permission denied: euid=1005 egid=8
Aug 25 11:11:29 on-line exim[5222]: exim: could not open panic log - aborting: see message(s) above
Aug 25 11:11:34 on-line exim[5524]: 2009-08-25 11:11:34 exim 4.69 daemon started: pid=5524, -q30m, listening for SMTP on port 25 (IPv6 and IPv4) port 587 (IPv6 and IPv4) and for SMTPS on port 465 (IPv6 and IPv4)
Aug 25 11:11:34 on-line exim[5524]: 2009-08-25 11:11:34 Cannot open main log file "/var/log/exim4/mainlog": Permission denied: euid=1005 egid=8
Aug 25 11:11:34 on-line exim[5524]: exim: could not open panic log - aborting: see message(s) above
Aug 25 11:23:44 on-line exim[6733]: [1\2] 2009-08-25 11:23:44 Exim configuration error in line 172 of /var/lib/exim4/config.autogenerated.tmp:
Aug 25 11:23:44 on-line exim[6733]: [2/2] option "mode" unknown
Aug 25 11:23:44 on-line exim[6733]: [1\2] 2009-08-25 11:23:44 Exim configuration error in line 172 of /var/lib/exim4/config.autogenerated.tmp:
Aug 25 11:23:44 on-line exim[6733]: [2/2] option "mode" unknown
Aug 25 11:23:44 on-line exim[6733]: exim: could not open panic log - aborting: see message(s) above
Aug 25 11:33:01 on-line sa-exim[7177]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 11:33:01 on-line sa-exim[7177]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 12:33:01 on-line sa-exim[9097]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 12:33:01 on-line sa-exim[9097]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 13:33:01 on-line sa-exim[9564]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 13:33:01 on-line sa-exim[9564]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 14:33:01 on-line sa-exim[10002]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 14:33:01 on-line sa-exim[10002]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 15:33:01 on-line sa-exim[10888]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 15:33:01 on-line sa-exim[10888]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 16:33:01 on-line sa-exim[11926]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 16:33:01 on-line sa-exim[11926]: Removed 0 of 0 greylist directories in 0 seconds
Aug 25 17:33:01 on-line sa-exim[12390]: Removed 0 of 0 greylist tuplets in 0 seconds
Aug 25 17:33:01 on-line sa-exim[12390]: Removed 0 of 0 greylist directories in 0 seconds

почему-то в логе есть это сообщение: Cannot open main log file "/var/log/exim4/mainlog": Permission denied: euid=1005 egid=8, но в мэйнлог у меня почему-то пишется информация от екзима. также ошибка в файле генерации при перезапуске екзима в консоли не выдается. обычно, раньше, сли были ошибки, об этом всегда писалось.
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение arkhnchul »

euid=1005 egid=8

1)какие id у пользователя-хозяина лога экзима?
2) 1005 и 8 - это чьи id?
Losing is fun!
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

arkhnchul писал(а):
25.08.2009 16:30
euid=1005 egid=8

1)какие id у пользователя-хозяина лога экзима?
2) 1005 и 8 - это чьи id?


1005 - uid mailnull(пользователь от которого работает екзим), 8 - guid mail(это группа от которой работает екзим).
вот вывод насчет хозяина логов
root@on-line:~# ls -l /var/log/exim4/
итого 24556
-rw-r----- 1 mailnull mail 252811 Авг 25 18:56 mainlog
-rw-rw---- 1 mailnull mail 13392741 Июл 13 16:06 mainlog~
-rw-r----- 1 mailnull mail 6941979 Авг 25 18:52 mainlog.1
-rw-rw-rw- 1 mailnull mail 1748 Май 26 07:36 mainlog.1~
-rw-rw---- 1 mailnull mail 153288 Июл 21 11:19 mainlog.2.gz
-rw-rw---- 1 mailnull mail 334 Май 26 08:54 mainlog.3.gz
-rwxrwxrwx 1 mailnull mail 109441 Май 25 15:08 mainlog.4.gz
-rw-r----- 1 mailnull mail 7212 Май 22 09:38 mainlog.5.gz
-rw-rw-rw- 1 root mail 267 Май 19 09:38 mainlog.6.gz
-rwxrwxrwx 1 root mail 2600 Май 18 11:15 mainlog.7.gz
-rw-r----- 1 mailnull mail 50988 Авг 25 18:56 rejectlog
-rw-r----- 1 mailnull mail 3345308 Авг 25 10:55 rejectlog.1
-rw-r----- 1 mailnull mail 801984 Июл 21 08:16 rejectlog.2.gz
-rw-r----- 1 root mail 502 Май 14 17:39 rejectlog.3.gz
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

с логами все в порядке, единственное не идут записи в dovecot-deliver.log, я его специально сделал для того чтобы отслеживать, как прошла доставка. права выставлять пробовал на него всякие и ни при одних он не изменялся. при попытке послать письмо на собственный ящик с вешнего адреса приходит сообщение в духе:
This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

pipe to | "/usr/lib/dovecot/deliver" -d rovnyi
generated by rovnyi@on-line.kz
local delivery failed

The following text was generated during the delivery attempt:

------ pipe to | "/usr/lib/dovecot/deliver" -d rovnyi
generated by rovnyi@on-line.kz ------

Can't open log file /var/log/dovecot-deliver.log: Permission denied

------ This is a copy of the message, including all the headers. -----


думал проблема в сокетах, но ничего на это не указывает. так, что сейчас только гадать осталось, в чем дело. почта построена не на мускуле и не на виртуальных юзерах, а на системных учетках и форвард файлах. если кто-то может подсказать, в чем дело, ткните носом куда копать, а там уже сам разберусь, просто уже нет мыслей насчет всего этого.
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Ленивая Бестолочь »

это врятли причина, конечно, но вот это:
Rovnyi писал(а):
26.08.2009 08:45
Can't open log file /var/log/dovecot-deliver.log: Permission denied

вас не смущает? ;-)

Rovnyi писал(а):
26.08.2009 08:45
права выставлять пробовал на него всякие и ни при одних он не изменялся.

ну попробуйте 777 для чистоты эксперимента.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

Ленивая Бестолочь писал(а):
26.08.2009 09:19
это врятли причина, конечно, но вот это:
Rovnyi писал(а):
26.08.2009 08:45
Can't open log file /var/log/dovecot-deliver.log: Permission denied

вас не смущает? ;-)

Rovnyi писал(а):
26.08.2009 08:45
права выставлять пробовал на него всякие и ни при одних он не изменялся.

ну попробуйте 777 для чистоты эксперимента.

гм... 777 это конечно хорошо и я не пробовал пока, но по опыту могу сказать, что не помогает, уже делал такое когда поднимал почтовик и ни разу не дало положительных результатов(((
то, что пермишены на лог деливера - это да, пытаюсь решить, но все время ничего не получается. уже в конфигах екзима и довкота начал менять юзеров и группы доступа, не помогает. а разве невозможность доступа к логу может служить причиной этой проблемы? я просто думал, что это, так сказать, побочный эффект и особого влияния не имеет на работу почты. нечто вроде: "Ну не написал в логи, ну и ладно, письмо все равно доставлено". это не так?
З.Ы.: вот группы и юзера которые прописаны в конфиге довекота:
# Group to enable temporarily for privileged operations. Currently this is
# used only with INBOX when either its initial creation or dotlocking fails.
# Typically this is set to "mail" to give access to /var/mail.
mail_privileged_group = mail

# Grant access to these supplementary groups for mail processes. Typically
# these are used to set up access to shared mailboxes. Note that it may be
# dangerous to set these if users can create symlinks (e.g. if "mail" group is
# set here, ln -s /var/mail ~/mail/var could allow a user to delete others'
# mailboxes, or ln -s /secret/shared/box ~/mail/mybox would allow reading it).
mail_access_groups = mail
....
## dovecot-lda specific settings
##
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0660
user = dovecot # User running Dovecot LDA
#group = mail # Or alternatively mode 0660 + LDA user in this group
}
}

}
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

так, выставил права на 777. заработало)))) хорошая идея, самому почему-то в голову не пришла. как и подозревал в начале ошибка в сокете
deliver(rovnyi): 2009-08-26 12:32:02 Error: Can't connect to auth server at /var/run/dovecot/auth-master: Permission denied

но сколько не бился с правами, угадать правильных юзера и группу не смог... пришлось на сокет выставлять права 666. только после этого заработало. кто-нибудь может подсказать какие права нужно выставить на /var/run/dovecot/auth-master чтобы при 660 он также работал?
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение arkhnchul »

ну вроде как туда должны уметь писать/читать довкот и екзим. в одну группу их запихните.
Losing is fun!
Спасибо сказали:
Rovnyi
Сообщения: 46
ОС: Debian Lenny

Re: Решено: Exim&Dovecot, проблема доставки писем

Сообщение Rovnyi »

arkhnchul писал(а):
26.08.2009 12:00
ну вроде как туда должны уметь писать/читать довкот и екзим. в одну группу их запихните.

пытался угадать с правами, ни одна комбинация почему-то не подходит. видимо что-то не так делаю. но, как факт, проблему решил. спасибо
Я ПИШУ ПО-РУССКИ!!!
Спасибо сказали: