Exim4 智能主机中继

Exim4 智能主机中继

我正在运行 Exim 4.71。我想要:

  1. 路由所有电子邮件A.com 通过 mail.A.com
  2. 路由所有电子邮件[BE].com 通过 mail.B.com
  3. 直接发送所有其他电子邮件。

以下是我的配置,但它没有像我希望的那样工作:

域名列表 a_domains = a.com
域名列表 b_domains = b.com : c.com : d.com : e.com

开始路由器

智能路线:
  司机 = 手动路线
  域名 = +a_domains
  传输 = remote_smtp
  路由列表 = +a_domains mail.a.com
  不再

智能路线:
  司机 = 手动路线
  域 = +b_域
  传输 = remote_smtp
  路由列表 = +b_domains mail.mollenhour.com
  不再

dns查找:
  驱动程序 = dnslookup
  域 = !+本地域
  传输 = remote_smtp
  忽略目标主机 = 0.0.0.0 : 127.0.0.0/8
  不再

当我使用 PHP 发送电子邮件时mail()或Zend_Mail_Transport_Smtp将 From: 和 Return-Path: 设置为[电子邮件保护]smart_route_a不使用路由器,而是使用 dnslookup。禁用 dnslookup 会导致不发送邮件。

从日志来看,电子邮件已发送 [电子邮件保护]使用smart_route_a,但同一封电子邮件来自[电子邮件保护][电子邮件保护]使用 发送dnslookup

如何创建电子邮件 [电子邮件保护]通过 mail.a.com 中继吗?

答案1

使用条件

route_list = * "${if match{$header_from:}{\N.*\.a\.com$\N} {mail.a.com}}"

domains = 仅检查目标域而不是源域。

相关内容