用于从多个 IP 地址发送电子邮件的 Linux 电子邮件服务器

Ale*_*ort 6 email linux exim interface

我正在尝试设置一个电子邮件服务器,使其能够从多个 IP 地址发送电子邮件,因此我们的营销系统可以从多个域发送电子邮件,同时保持反向 DNS 查找的一致性。IE,domain1.com 解析为 10.0.0.1,domain2.com 解析为 10.0.0.2,以此类推。

理想情况下,邮件服务器会检查from标题中的域,然后从池中选择正确的 IP 地址,将其用于实际发送。现在,我们正在使用 Exim,我认为一种解决方案是在不同的接口上运行多个 Exim 实例,然后编写一个 SMTP 代理来进行标题检查并将电子邮件转发到正确的 Exim 实例,但是我认为可能有比这更简单的解决方案。

众所周知,这不涉及垃圾邮件,我们拥有将使用的所有域和 IP 地址。

jj3*_*j33 8

如果我理解你,你在服务器上有邮件,并且该服务器上配置了 4 个 IP 地址。您希望邮件服务器在发送到 Internet 时使用这四个 IP 之一作为出站接口。如果这是错误的解释,请告诉我。

Exim SMTP 传输可以配置为通过不同的接口发送电子邮件。以硬编码的方式,你可以这样做:

routers:

send_domaina_com:
  driver = dnslookup
  domains = domaina.com
  transport = domaina_com_smtp

send_domainb_com:
  driver = dnslookup
  domains = domainb.com
  transport = domainb_com_smtp

send_domainc_com:
  driver = dnslookup
  domains = domainc.com
  transport = domainc_com_smtp

send_domaind_com:
  driver = dnslookup
  domains = domaind.com
  transport = domaind_com_smtp

TRANSPORTS:

domaina_com_smtp:
  driver = smtp
  interface = 10.0.0.1

domainb_com_smtp:
  driver = smtp
  interface = 10.0.0.2

domainc_com_smtp:
  driver = smtp
  interface = 10.0.0.3

domaind_com_smtp:
  driver = smtp
  interface = 10.0.0.4
Run Code Online (Sandbox Code Playgroud)

我 99.99% 以上都可以,尽管它显然很丑。我认为你需要动态处理的一切都在那里(“接口”是可扩展的)。