Postfix 虚拟邮箱 - 如果“myhostname”不是“localhost”,则邮件被拒绝

Postfix 虚拟邮箱 - 如果“myhostname”不是“localhost”,则邮件被拒绝

我在用着本指南使用 postfix 为非 Linux 帐户设置虚拟邮箱。

我的 main.cnf 的这一部分:

myhostname = localhost
mydomain = aviacao.pt
myorigin = aviacao.pt
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
virtual_mailbox_domains = aviacao.pt
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = hash:/etc/postfix/vmaps
virtual_minimum_uid = 1000
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
relay_host = 
recipient_delimiter = +
inet_interfaces = all
unknown_local_recipient_reject_code = 550

这有效,但仅当 myhostname 设置为 localhost 时才有效。如果我将 myhostname 设置为 aviacao.pt,它将不会接收电子邮件:

550 5.1.1:收件人地址被拒绝:本地收件人表中的用户未知

为什么会这样?指南甚至说将 myhostname 设置为 localhost 会导致问题:

使用 localhost 作为 myhostname 可能会导致问题,因为该变量在服务器发送的 EHLO 消息中使用。

这是最好的方法吗?这会引起什么问题?

答案1

将 myhostname 重新设置为“ aviacao.pt

添加以下行:

mydestination = aviacao.pt, localhost, localhost.localdomain

相关内容