我管理的服务最近已切换到 AWS/EC2,但我们有几个电子邮件信誉良好的 IP 地址,我们希望继续通过这些地址发送电子邮件。我们已将 exim 设置为 EC2 实例上的卫星,以便在该机器上本地使用 sendmail 发送的电子邮件将通过 AWS 之外的现有 SMTP 服务器发送。这很有效。
唯一的问题是我们的电子邮件在邮件信封中没有 AWS/EC2 主机名。这会导致有人将电子邮件报告为垃圾邮件,而这些垃圾邮件会被发送到 AWS。例如,以下是我希望不存在的示例标头:
Received: from ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com ([XX.XX.XXX.XXX]:XXXXX helo=www2.server.com)
by server.com with esmtpsa (TLSv1:DHE-RSA-AES128-SHA:128
(Exim 4.80.1)
(envelope-from <[email protected]>)
id XXXXXX-0003Sm-Ex
for [email protected]; Wed, 09 Apr 2014 11:52:43 -0400
Received: from www-data by www2.server.com with local (Exim 4.80)
(envelope-from <[email protected]>)
id XXXXXX-0003Kv-9F
for [email protected]; Wed, 09 Apr 2014 11:52:43 -0400
我不介意第二个Received
标题,但我需要删除第一个标题。有什么办法吗?
更新:看来这headers_remove: Received
是正确的指令。但我不太确定应该把它放在配置文件的什么位置(实际上使用 WHM/CPanel 来管理此服务器)。
答案1
这正是headers_remove: Received
我想要的选项。起初我在卫星服务器上尝试过,但当然没有成功,因为这些特定的Received
标头直到智能主机服务器实际收到它时才添加。因此它需要属于智能主机的 exim 配置。
此指令需要将其放入路由器中,但由于此服务器由 CPane/WHM 管理,这会使其变得复杂,CPane/WHM 会锁定 exim 配置文件的某些部分。解决方案是创建一个在预定义路由器之前运行的新路由器。此路由器是我想要修改的路由器的副本,但headers_remove
添加了此选项。保存并重新启动,一切都运行良好。