如何让 sendmail 在邮件头中写入服务器 IP

如何让 sendmail 在邮件头中写入服务器 IP

最近更换主机后,我收到了很多退回的电子邮件。发生的情况(可能确实如此)是,我将通过我的服务器从家里的 MTA 发送邮件,服务器通过 STARTTLS 进行身份验证并使用我的家庭 IP 地址中继邮件。

我不记得我们的旧服务器有这种行为。我记得的是服务器的 IP 地址会被用在发件人标头中。

有没有办法使用服务器的 IP 地址代替我的家庭 IP?我发现大多数动态 IP 都被列入了黑名单,导致我的许多邮件被退回。我不确定我需要做什么。这是我想要的伪装吗?我不想为此使用智能主机。

谢谢。

编辑:

我有两封退回的邮件想要发布。

The original message was received at Fri, 2 Mar 2012 10:45:35 -0800 (PST)
from cpe-170-31-105-69.res.rr.com [170.31.105.69]

   ----- The following addresses had permanent fatal errors -----
<[email protected]>
    (reason: 554 lnxipc002-in.nmcc.sprintspectrum.com)

   ----- Transcript of session follows -----
... while talking to mx.messaging.sprintpcs.com.:
<<< 554 lnxipc002-in.nmcc.sprintspectrum.com
554 5.0.0 Service unavailable

最后一个是:

The original message was received at Thu, 1 Mar 2012 11:02:35 -0800 (PST)
from cpe-170-31-105-69.res.rr.com [170.31.105.69]

   ----- The following addresses had permanent fatal errors -----
<[email protected]>
    (reason: 554 Transaction Failed Spam Message not queued.)

   ----- Transcript of session follows -----
... while talking to mail2.corp.com.:
>>> DATA
<<< 554 Transaction Failed Spam Message not queued.
554 5.0.0 Service unavailable

答案1

  1. MTA 应该绝不更改现有标题,除非它有一些非常好的理由,但这不是其中之一。
  2. 电子邮件源自动态 IP 与下次希望接受该电子邮件几乎无关。

    我在家里运行一个邮件服务器。它将电子邮件转发到我的 VPS,然后 VPS 会正确转发电子邮件。由于家庭服务器具有动态 IP(这在我查看过的所有 PBL 中列出)。此外,主服务器会将发送邮件的 MUA 的内部 IP 写入“已接收”标头,或者在 Webmail 的情况下写入另一个 IP 地址(Webmail 软件会将其自己的“已接收”标头写入与登录的 Web 浏览器相关的标头;如果中间有代理,则其信息也会写入其中)

答案2

接收 MTA 将根据该信息查看连接 MTA 的 IP 接受/拒绝,而不是发件人的 IP 地址。否则,任何人的电子邮件都无法到达任何地方。这一切都在标题中。

您有退回邮件的 DSN 吗?如果您确实在使用 sendmail,它应该会为您提供有关邮件退回原因的所有相关信息。

最有可能的是,您的新服务器的 IP 位于某些 RBL 中,这就是原因所在,但如果没有实际的 DSN,我们只能进行推测。如果您不知道,请发布。

答案3

您是通过 ISP 还是其他提供商进行中继?如果您的本地 MTA 直接将邮件投递到互联网,那么您将受到常见的垃圾邮件检查(例如 SPF 记录、反向 DNS 查找)。

例如,在 postfix 中,你可以将 Relayhost 指令设置为提供商的 IP 地址。以下是 Google 示例:https://www.wormly.com/blog/2008/11/05/relay-gmail-google-smtp-postfix/

相关内容