-1

我有我的 /etc/postfix/virtual 文件:

sub.domain.com DOMAIN
@sub.domain.com user2

domain.com DOMAIN
@domain.com user1

@sub.domain.com 的邮件仍然发送到 user1,这不是我想要的。这是我的 /etc/postfix/my.cnf 以防万一:

mydomain = domain.com
myhostname = mail.domain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
virtual_alias_maps = hash:/etc/postfix/virtual
myorigin = $mydomain
mydestination = $myhostname, $mydomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 1073741824
recipient_delimiter = +
inet_interfaces = all
parent_domain_matches_subdomains = 

请注意,我将 parent_domain_matches_subdomains 设置为空。但这仍然无济于事。有任何想法吗?

4

1 回答 1

1

virtual_alias_maps 表的右侧是不合格的用户名。

Postfix 将 $myorigin 附加到不合格的用户名,使其有效

@sub.example.com user2@example.com @example.com user1@example.com

现在 user2@example.com 被 @example.com 的全部捕获。

因此,user2@example.com 的邮件发送到 user1。

您可以将您的 Postfix 配置更改为:

mydomain = example.com
我的主机名 = mail.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
virtual_alias_maps = hash:/etc/postfix/virtual
myorigin = $我的域名
mydestination = $myhostname, $mydomain, localhost
中继主机 =
我的网络 = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
邮箱大小限制 = 1073741824
收件人分隔符 = +
inet_interfaces = 所有
parent_domain_matches_subdomains =
virtual_alias_domains = sub.example.com
luser_relay = user2@example.com

/etc/postfix/virtual
@sub.example.com user1@example.com

创建两个系统帐户 user1 和 user2。

于 2009-06-11T10:27:37.847 回答