![负载均衡器后面的后端 Web 服务器的 Postfix 配置](https://linux22.com/image/642014/%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%E5%99%A8%E5%90%8E%E9%9D%A2%E7%9A%84%E5%90%8E%E7%AB%AF%20Web%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%20Postfix%20%E9%85%8D%E7%BD%AE.png)
我有两个网络服务器(ws1.example.com,ws2.example.com) 使用本地安装的 postfix 作为邮件依赖 (使用 mandrillapp),用户可以通过以下方式访问它们www.example.com,这是一个负载均衡器
在ws1,配置如下
主机名
ws1
主机名 -f
ws1.example.com
/etc/hosts
127.0.0.1 localhost
127.0.1.1 ws1.example.com ws1
/etc/postfix/main.cf
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:[email protected]:abc
smtp_sasl_security_options = noanonymous
myhostname = ws1.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = ws1, ws1.example.com, localhost
relayhost = [smtp.mandrillapp.com]:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
显然它可以工作,但我想知道上述配置是否存在任何潜在问题?
更新:我担心的是ws1.example.com
,ws2.example.com
我的 DNS 无法解析。
答案1
因此,据我了解,您的电子邮件流程图
wsX.example.com --> smtp.mandrillapp.com --> external mailserver
现在,垃圾邮件检查器外部邮件服务器 通常使用最后一个 smtp 服务器信誉来帮助确定这封电子邮件是否为垃圾邮件。因此,在这种情况下,外部邮件服务器只需检查smtp.mandrillapp.com声誉忽略在到达之前对电子邮件发生的事情smtp.mandrillapp.com。
但一些高级垃圾邮件检查器会考虑整个邮件流来确定您的电子邮件是否为垃圾邮件。因此,他们可以检查域名wsX.example.com是否存在。因此,为了安全起见,我建议您添加 A 记录wsX.example.com解析为负载均衡器的 IP。作为上一个解决方案的替代方案,您应该更改smtp_helo_name
范围匹配示例.com。
这一小步将帮助您确保您的电子邮件将到达用户邮箱。我对为什么必须解析 ws1.example.com 的担忧之一是某些垃圾邮件检查程序会检查您的 helo 名称。以下摘录自相关文章
邮件服务器因不良 HELO 而被阻止的常见原因有:
*服务器宣布自己是“本地主机”。
*服务器正在将自己宣布为 IP 地址。
*服务器宣布其自身为不存在的主机名。