您不仅想要一个全收配置,接受 *@abc.com 的任何邮件,还想要一个全接受配置,接受 *@* 的任何邮件?
如果您的 Postfix 编译时支持 PCRE,则可以实现此目标。然后,在您的配置中需要虚拟用户(请参阅 Posfix 文档),并进行以下调整:
确保您的 Postfix 已经配置为至少接受一个用户和一个域的邮件,并已经测试通过。
1)在 main.conf 中设置
virtual_alias_domains =
virtual_alias_maps = hash:/etc/postfix/virtual_forwardings, pcre:/etc/postfix/virtual_forwardings.pcre
virtual_mailbox_domains = hash:/etc/postfix/virtual_domains, pcre:/etc/postfix/virtual_domains.pcre
其中,hash: 部分是文档中已知的部分。而 pcre: 部分是新的。
也可以省略 hash: 部分。
2)创建文件 virtual_domains.pcre,内容如下:
/^.* / OK
这将接受任何域作为有效的收件人域。
3)创建文件 virtual_forwardings.pcre,内容如下:
/@.*/ someuser@example.com
这将转发任何域的任何本地部分到 Postfix 用户 someuser@example.com。请确保这是有效的虚拟或本地用户。
在此配置中,Postfix 似乎是一个开放的 Relay,但它不会为其他域中继。它接受任何域的邮件,并将邮件本地递送到一个邮箱中。
有时您会注意到日志条目,告诉您类似于“不要在 mydestination 和 virtual config 中列出 abc.com”。可以忽略此警告,因为这种“奇怪”的设置并不常见。