[exim-conf] свежий dovecot > 1.01, exim и Logins with login process UID 97 (user postmaster на nospam.xxx.ru) not permitted (see login_user in config file)
Nikolai V. Ivanyushin wrote:
> Привет, аксакалы!
здоров
> Такая проблема возникла с dovecot. Версия 1.01 ругалась
> -------------
> Oct 5 09:40:16 home dovecot: auth(default):
> passwd(postmaster на nospam.xxx.ru,::ffff:192.168.xxx.xx): unknown user
> Oct 5 09:40:16 home dovecot: Logins with login process UID 97 (user
>postmaster на nospam.xxx.ru) not permitted (see login_user in config file).
> -------------
> но пускала пользователя. А 1.03 уже не пускает. Пробовал написать в
> конфиге login_user = dovecot. Не помогло. Есть ли какая подсказка?
пришло таки время доставлять почту виртуальных пользователей не от имени
пользователя dovecot, как у многих было настроено, а от имени другого
пользователя.
есть два вариант - или создать отдельного пользователя, или доставлять
почту от имени пользователя, от имени которого запущен exim (exim в
случае Linux и mailnull в случае FreeBSD).
для себя и своих клиентов я выбрал второй путь (дабы не продить сущности).
у тебя Fedora используется, так что сразу буду писать исходя из того,
что доставку почты нужно настроить от имени пользователя exim.
для перенастройки exim нужно в site/conf изменить значения параметров
confVIRT_MDIR_USER и confSYSTEM_FILTER_USER сделать равными exim (в
общем случае можно сказать, что их надо сделать равными значению
параметра confEXIM_USER):
define(`confSYSTEM_FILTER_USER', `exim')dnl
define(`confVIRT_MDIR_USER', `exim')dnl
после этого gmake stop all
stop делаем для того, чтобы не сыпались ошибки в логи при доставке
первых писем, т. к. у нас exim уже будет пытаться доставлять почту от
имени пользователя exim, а владельцем maildir'ов все еще является
пользователь dovecot.
далее нужно сменить владельца maildir'ов и лога системного фильтра.
либо вручную, выполнив
chown -R exim /var/vmail /var/log/exim/filter*
либо из паровоза, выполнив
gmake install
в первом случае я подразумевал, что maildir'ы расположены в /var/vmail
во втором случае я подразумевал, что в site/conf не выключена смена
владельца maildir'ов переменной confVIRT_MDIR_CHOWN_RECURSIVE:
define(`confVIRT_MDIR_CHOWN_RECURSIVE', `NO')dnl
если значение confVIRT_MDIR_CHOWN_RECURSIVE не равно NO, то можно все
манипуляции с паровозом свести к
gmake stop all install start
далее, нужно не забыть поправить владельца filterlog'а в программе
ротации логов. в Linux нужно править /etc/logrotate.d/dovecot (сменить
dovecot на exim), в FreeBSD нужно править /etc/newsyslog.conf (сменить
dovecot на mailnull).
и последнее - правка конфига dovecot'а.
во-первых, нужно сменить значения first_valid_uid и last_valid_uid.
проще всего просто приравнять их к значение UID пользователя exim (во
всех или почти всех Fedora Core он равен 93).
во-вторых, нужно сменить значение аргумента uid в описании userdb static
тоже на UID пользователя exim.
для FreeBSD в этих же местах нужно указать UID пользователя mainull.
после это остается запустить dovecot
ну и если в каких-то скриптах для работы с maildir'ами выполняется
chown, то нужно не забыть и в них сменить пользователя dovecot на
пользователя exim или mailnull в зависимости от ОС.
воде все
--
Best wishes Victor Ustugov mailto:victor на corvax.kiev.ua
public GnuPG/PGP key: http://victor.corvax.kiev.ua/corvax.asc
ICQ: 77186900, 32418694 CRV2-RIPE, CRV-UANIC