Раньше у меня была локальная учетная запись для каждого пользователя электронной почты, и все было в порядке. Недавно я перешел с Procmail на dovecot-lda, при этом Dovecot использует собственную базу данных пользователей.
Dovecot с радостью доставляет почту и позволяет пользователям собирать ее, не требуя учетных записей локальных пользователей. Таким образом, я попытался удалить локальных пользователей и вместо этого настроить dovecot на использование общего vmail
пользователь. ЧТОБЫ проверить, я установил правильный почтовый путь для моего тестового пользователя в пользовательской базе данных Dovecot, но установил UID в качестве моего пользователя vmail и изменил владельца соответствующих почтовых папок на vmail.
Это отлично работает для соединений imap / pop, и ручной запуск dovecot-lda отлично работает. Насколько я понимаю, для Dovecot весь процесс доставки и сбора работает нормально.
Однако, если я попытаюсь доставить электронное письмо через Postfix, я получаю следующее сообщение:
status=bounced (unknown user: "test-user")
Я думал, что это будет так же просто, как отключить local_recipient_maps
чтобы Postfix не пытался проверить локальных пользователей, но я просто не могу избавиться от этой ошибки. Есть ли какой-то простой вариант, который мне не хватает, чтобы Postfix игнорировал тот факт, что локальный пользователь не существует, и просто передавал сообщение dovecot?
Применимая конфигурация Postfix
mailbox_command = /usr/local/libexec/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT" -d "$USER"
local_recipient_maps =
virtual_alias_domains = $config_directory/local-host-names
virtual_alias_maps = hash:$config_directory/virtusertable
Есть запись в virtusertable
для моего тестового адреса электронной почты с test-user
как правая сторона.