为了支持更多域名和非系统帐户,我们最近重新配置了 postfix 以使用虚拟域。
对于接收邮件来说,这种方法运行良好,但是当邮件发送时,它通常会被接收邮件服务器标记为垃圾邮件,因为该邮件被标记为来自“localhost”,而不是在更改为虚拟域之前的真实主机/域名。
在 main.cf 中设置了以下几行:
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
+ other settings for virtual domains
mydestination is commented out as all domains are virtual.
这些似乎对于发送域没有什么影响。
理想情况下,邮件应根据发送域标记为来自“mail.example.com”或“mail.example2.com”。如果这不可能,那么将其标记为来自“localhost”以外的任何地址就可以了。有人能指出缺失或错误的设置吗?
编辑在收到的电子邮件中,“返回路径”是正确的,“localhost”出现在以下行:
已接收:来自 localhost ([abcd]),发送方为 mail.receivingserver.com
答案1
收到:来自本地主机
听起来你的 smtp HELO 配置不正确。从你的描述来看,你已经设置了我的主机名main.cf 中的参数,但此后没有重新加载 postfix
尝试运行postfix reload
并确认postconf myhostname
。如果没有返回mail.example.com现在你可能编辑了错误的 main.cf。在这种情况下,运行postconf -e 'myhostname = mail.example.com'
并postfix reload