Я хочу заменить старую настройку почтового сервера на postfix+dovecot. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что в старой системе имена пользователей отличались от адреса электронной почты пользователя. Например:
- Адрес электронной почты:
foo@example.com
- Имя пользователя:
foo-example.com
Я настроил postfix так, чтобы он передавал письма в dovecot с помощью следующей команды (master.cf
):
dovecot unix - n n - - pipe
flags=DRhu user=mail-data:mail-data argv=/usr/lib/dovecot/dovecot-lda -a $(recipient)
Когда dovecot теперь получает электронное письмо от postfix, он регистрируется
dovecot: lda(mail-data): Error: User initialization failed: Namespace 'INBOX.': Home directory not set for user. Can't expand ~/ for mail root dir in: ~/Maildir
dovecot: lda: Fatal: Invalid user settings. Refer to server log for more information.
Я думаю, что dovecot не знает, что имя пользователя не является адресом электронной почты, но как я могу сказать ему?
Кроме того, здесь у нас есть альтернативные адреса, поэтому, например, может быть адрес электронной почты bar@example.com
принадлежащий foo-example.com
, у которого foo@example.com
качестве основного адреса.