Что ж, случай кажется простым, но я не могу найти удовлетворительного ответа.
У меня есть установка Postfix / Dovecot с более поздней настройкой для работы с виртуальными электронными письмами, которая работает как шарм ... для виртуальных пользователей, у которых нет учетной записи на сервере.
Чтобы было понятнее, возьмем пример: virtualuser
зарегистрирован в базе данных виртуальных пользователей (/ etc / dovecot / users) и может без проблем получать и отправлять почту через IMAP и SMTP. С другой стороны, localuser
является обычным системным пользователем на сервере. Теперь, если я добавлю нового пользователя в базу данных виртуальных пользователей Dovecot с именем localuser
и попытаюсь подключиться как этот виртуальный-пользователь-с-локальным-псевдонимом в IMAP, я получаю следующую ошибку в моих журналах:
imap: Error: user localuser: Mail access for users with UID 1000 not permitted ([etc]).
Понятно, что поскольку Postfix находит пользователя с именем localuser
у пользователей системы он пытается аутентифицироваться с который пользователь и даже не смотрит на виртуальных пользователей.
Итак, вот вопрос: как мне получить виртуальных пользователей Postfix? перед локальные пользователи?
Возможно ли это, или я застрял с беспорядочным смешиванием конфигурации локальные и виртуальные пользователи?
Как я и ожидал, решение этой проблемы было чрезвычайно просто: /etc/dovecot/conf.d/10-auth.conf
включает два файла: auth-system.conf.ext
для пользователей системы, и auth-mydomain.conf.ext
для виртуальных пользователей. В порядок эти файлы включены очень важно, поиск пользователей системы после виртуальных пользователей легко выполняется путем замены обеих строк:
[...]
!include auth-mydomain.conf.ext
!include auth-system.conf.ext