postfix、dovecot 和用户名不同于电子邮件地址

postfix、dovecot 和用户名不同于电子邮件地址

我想用 postfix+dovecot 替换旧的邮件服务器设置。我现在面临的问题是,旧系统的用户名与用户的电子邮件地址不同。例如:

我配置了 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 不知道用户名不是电子邮件地址,但我该怎么告诉他呢?

此外,这里我们还有备用地址,例如,可能有一个电子邮件地址[email protected]属于拥有主要地址的foo-example.com人。[email protected]

答案1

花了很长时间才发现这一点。master.cf现在,dovecot 中的以下配置可以接受我的邮件:

dovecot      unix   -        n      n       -       -   pipe
  flags=DRhu user=mail-data:mail-data argv=/usr/lib/dovecot/dovecot-lda
  -f ${sender} -d ${user}@${nexthop} -m ${extension}

相关内容