我使用Ubuntu,在Web服务器上需要发送电子邮件(通过sendgrid),这台服务器永远不会收到任何外部电子邮件,我有以下主机名设置
/etc/hostname = example /etc/hosts = www.example.com.int example (the fqdn has no entry in DNS server)
Web服务器将在负载均衡器后面访问(DNS设置为www.example.com)
现在,对于main.cf ,哪个设置是首选?
myhostname = www.example.com.int mydestination = www.example.com.int, example.com.int, localhost
要么
myhostname = www.example.com mydestination = www.example.com, example.com, localhost
$myhostname 默认与系统FQDN相同。 这应该像hostname.example.com 。 看一下hostname和联系人的联机帮助页,为系统正确configuration它。 $myhostnamevariables用于许多其他参数,如smtp_helo_name ,这应该是一个有效和正确的FQDN。 否则,你的邮件可能被许多服务器拒绝,或者至less被标记为垃圾邮件(拒绝错误的helos是一个很好的垃圾邮件减less技术btw)。
正如克雷格·沃森(Craig Watson)已经说过的,如果没有邮件在那里传递,那么我的目标就不那么重要。 (但强烈推荐阅读邮件服务器pipe理员,如网站pipe理员和邮政局长!)
最后一件事:确保将此服务器包含在DNS中的SPF条目中。
myhostname应该设置为服务器的FQDN。
如果您的服务器永远不会收到电子邮件,那么您可以安全地将mydestination设置为localhost因为mydestination指令控制着Postfix将尝试在本地交付的域。
请参阅Postfix文档: http : //www.postfix.org/postconf.5.html#mydestination