Exim кладет письма, не туда, куда мне надо!
Добавлено: 2010-03-12 19:45:17
Стоит Ubuntu, Exim+Dovecot, почта обе стороны работает (с сервера пробовал только из шелла).
Exim 4.69 убунтовский, настраивал я его не по руководству лиссяры (честно говоря, побоялся количества непонятных для меня параметров, макросов и прочего) и поставил вместо exim4u с сайта http://exim4u.org, понадеялся, что там он мне облегчит настройки. Но это же принципиально ничего не меняет?
Проблема в следующем: у меня на сервере стоит Egroupware, которую мне надо настроить так, чтобы пользователи могли отправлять и получать почту из своих акаунтов ЕГВ (в настройках стоит стандартный IMAP).
Но я никак не могу сделать даже первый шаг - прочитать почту, которая приходит, из своего акаунта Egroupware.
Проблема в том, что Exim упрямо кладет письма в локальные каталоги пользователей, типа /home/azlk/Maildir/new.
Несмотря на то, что я в конфиге Exim-a прописал уже тупо напрямую, безо всяких макросов:
Ладно, он видит, что я local_user, но тогда в соответствии с local_delivery (выше) должна бы появиться почта в /var/mail/$local_part - но и там ничего нет...
Только что попробовал поменять /var/mail/$local_part на /home/vmail/$local_part - результат тот же.
Поскольку у меня локальных пользователей на сервере, кроме меня, нет, мне нафиг не нужно доставлять что-то локально. Я хотел, чтобы все пользователи Egroupware (и я, в том числе) были виртуальными, и чтобы их письма ложились в каталог /home/vmail/имя_пользователя.
Что интересно, если я вручную кладу письма в каталог /home/vmail/azlk/new, то из акаунта Egroupware я эти письма могу читать!
Значит, дело в настройках Exim-a, если у меня с логикой еще не все потеряно...
Я наивно предполагал, что настроив Dovecot и указав Exim-у каталог, все срастется, но не тут то было
А впереди еще надо будет как-то все это заставить работать с БД и акаунтами ЕГВ, вот жопа....
Подскажите, пожалуйста, что я не так делаю?
Exim 4.69 убунтовский, настраивал я его не по руководству лиссяры (честно говоря, побоялся количества непонятных для меня параметров, макросов и прочего) и поставил вместо exim4u с сайта http://exim4u.org, понадеялся, что там он мне облегчит настройки. Но это же принципиально ничего не меняет?
Проблема в следующем: у меня на сервере стоит Egroupware, которую мне надо настроить так, чтобы пользователи могли отправлять и получать почту из своих акаунтов ЕГВ (в настройках стоит стандартный IMAP).
Но я никак не могу сделать даже первый шаг - прочитать почту, которая приходит, из своего акаунта Egroupware.
Проблема в том, что Exim упрямо кладет письма в локальные каталоги пользователей, типа /home/azlk/Maildir/new.
Несмотря на то, что я в конфиге Exim-a прописал уже тупо напрямую, безо всяких макросов:
Код: Выделить всё
maildir_home:
debug_print = "T: maildir_home for $local_part@$domain"
driver = appendfile
.ifdef MAILDIR_HOME_MAILDIR_LOCATION
directory = MAILDIR_HOME_MAILDIR_LOCATION
.else
directory = /home/vmail <<======================
.endif
.ifdef MAILDIR_HOME_CREATE_DIRECTORY
create_directory
.endif
.ifdef MAILDIR_HOME_CREATE_FILE
create_file = MAILDIR_HOME_CREATE_FILE
.endif
delivery_date_add
envelope_to_add
return_path_add
maildir_format
.ifdef MAILDIR_HOME_DIRECTORY_MODE
directory_mode = MAILDIR_HOME_DIRECTORY_MODE
.else
directory_mode = 0700
.endif
.ifdef MAILDIR_HOME_MODE
mode = MAILDIR_HOME_MODE
.else
mode = 0600
.endif
mode_fail_narrower = false
Код: Выделить всё
# Dovecot
dovecot_router:
driver = accept
#local_part_suffix = +*
#local_part_suffix_optional
require_files = +/home/vmail/${local_part}/ <<<================!!!
transport = dovecot_transport
Код: Выделить всё
localuser:
driver = accept
check_local_user
transport = local_delivery
cannot_route_message = No such person at this address
Код: Выделить всё
# 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.
local_delivery:
driver = appendfile
file = /var/mail/$local_part <<<===========!!!
delivery_date_add
envelope_to_add
return_path_add
group = mail
user = $local_part
mode = 0660
no_mode_fail_narrower
Только что попробовал поменять /var/mail/$local_part на /home/vmail/$local_part - результат тот же.
Поскольку у меня локальных пользователей на сервере, кроме меня, нет, мне нафиг не нужно доставлять что-то локально. Я хотел, чтобы все пользователи Egroupware (и я, в том числе) были виртуальными, и чтобы их письма ложились в каталог /home/vmail/имя_пользователя.
Что интересно, если я вручную кладу письма в каталог /home/vmail/azlk/new, то из акаунта Egroupware я эти письма могу читать!

Значит, дело в настройках Exim-a, если у меня с логикой еще не все потеряно...
Я наивно предполагал, что настроив Dovecot и указав Exim-у каталог, все срастется, но не тут то было

А впереди еще надо будет как-то все это заставить работать с БД и акаунтами ЕГВ, вот жопа....
Подскажите, пожалуйста, что я не так делаю?