我试图通过遵循自述文件“Postfix 虚拟别名示例:单独的域,UNIX 系统帐户”,在 Postfix 中获得一些简单的虚拟域支持。
然而,就我而言,这会导致转发循环。我对 postfix 中的所有活动部件都很不熟悉。
<[email protected]> (expanded from <[email protected]>): mail
forwarding loop for [email protected]
来自的相关部分/etc/postfix/main.cnf
是:
myhostname = li153-5.members.linode.com
mydestination = localhost li153-5.members.linode.com
#....
smtpd_recipient_restrictions = reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl
smtpd_sender_restrictions = reject_unknown_sender_domain
mailbox_command = /usr/lib/dovecot/deliver -c /etc/dovecot/conf.d/01-mail-stack-delivery.conf -m "${EXTENSION}"
myorigin = /etc/mailname
virtual_alias_domains = webschuur.com berk.es
virtual_alias_maps = hash:/etc/postfix/virtual
然后,我的/etc/postfix/virtual
文件(在用 postmap 编译之前):
[email protected] ber
@berk.es ber
@webschuur.com ber
ber
是本地用户帐户。在此之前,我只是将域 webschuur.com 和 berk.es 列在 mydestination 下,然后可以将邮件发送到 [email protected] 并让它出现在我的 unix 系统帐户 Maildir 中。我现在想引入 catchall,并希望避免发往 [email protected] 的邮件出现在我的邮箱中;当我也在这个后缀上托管 example.org 时。@example.org 应该转到 UNIX 用户 exampleorg 左右。
我究竟做错了什么?为什么postfix投递到[email protected]时会出现循环?我应该在这里提供 main.cnf 或 postconf -d 中的某些部分吗?
所以它原来是一个悬空的 ~/.forward 文件。