Sud*_*ned 5 email exim g-suite
我们有一个不寻常的邮件设置 - Google Apps/Gmail 在前面,Exim 在我们的网络服务器上运行。Google Apps 中不存在的任何帐户的邮件都会转发到 Exim。这两个使用相同的域。
问题是,从 Exim 帐户(或我们的 PHP 应用程序)发送的所有邮件仅在本地发送,而不是通过 Gmail 发送。
为了更好地说明它,请参阅此高质量图表:
[Google Apps] (Tom, Dick, Harry)
|
v
[Exim] (Jane, Mary, Sue)
Run Code Online (Sandbox Code Playgroud)
发送给 Jane 的邮件会被 Google 转发给 Exim。发送给 Tom 的邮件只是由 Google 递送。这是有效的部分 - 问题是,Jane 无法给 Tom 发送电子邮件,因为就 Exim 而言,它运行着整个节目。
我正在阅读有关在 Exim 中设置 SmartHost 的信息,但这需要身份验证 - 最重要的是,Exim 中的帐户与 Apps 中的帐户不匹配。
如何配置 Exim 以通过外部路由传递本地邮件?
根据您在问题评论中引用的答案(配置服务器以将不可路由的电子邮件转发到另一个电子邮件服务器),我重写了逻辑部分以使用整个电子邮件地址,而不仅仅是本地部分。以下似乎在我的测试中有效。
1) 将example.com放在您的 +local_domains 中。
2)添加他推荐的路由器。(在此路由器之后应该有另一个路由器接受 +local_domains 和具有有效本地邮箱的用户):
not_local:
driver = manualroute
domains = +local_domains
transport = remote_smtp
condition = ${lookup{$local_part@$domain}lsearch{/etc/exim/forward_to_google}}
# Use whatever MX is correct for your domain below
route_list = +local_domains s7a1.psmtp.com
Run Code Online (Sandbox Code Playgroud)
3)创建/etc/exim/forward_to_google
并放入:
remote@example.com: yes
# Not required if this is a local account, but
# shows how flexible this approach can be
local@example.com: no
Run Code Online (Sandbox Code Playgroud)
4) 您可以使用 exim 的 -bt 地址测试选项进行测试(我的配置没有用于有效本地用户的第二个路由器,但您的配置应该如此,以便第一个用户显示本地交付):
$ exim -bt local@example.com
local@example.com is undeliverable: Unrouteable address
$ exim -bt remote@example.com
remote@example.com
router = not_local, transport = remote_smtp
host s7a1.psmtp.com [64.18.6.10]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7173 次 |
最近记录: |