我想通过smtp.server1.com发送From: .*@host2.com电子邮件,并通过smtp.server1.com发送From: .*@host2.com smtp.server2.com 。
目前,我已经使用dpkg-reconfigure exim4-configconfiguration了smarthost,以便update-exim4.conf.conf包含dc_smarthost='smtp.server1.com::587'这一行。 也就是说,一切都通过smtp.server1.com路由。
我尝试在smarthost:的定义之前添加另一个路由器smarthost:在configuration文件中,设置senders = .*@host2.com
smarthost_server2: debug_print = "R: smarthost_server2 for $local_part@$domain" driver = manualroute domains = ! +local_domains transport = remote_smtp_smarthost senders = .*@host2.com route_list = * smtp.server2.com byname host_find_failed = ignore same_domain_copy_routing = yes no_more
但exim仍然通过smtp.server1.com路由everyting。 我是否正确使用senders条件?
AFAIU,这对于有电子邮件的人来说应该是一个相当常见的设置。 @ google.com和。 @ gmail.com不希望在他们的@ gmail.com电子邮件标题中显示他们也是Google员工的事实,所以围堵应该是不同的。
好,我知道了。 senders是/ etc / mailname提供的,而不是From:
以下工作:
smarthost_server2: debug_print = "R: smarthost_server2 for $local_part@$domain" driver = manualroute domains = ! +local_domains transport = remote_smtp_smarthost condition = ${if match_domain{${domain:$h_From:}}{smtp.server2.com}{yes}{no}} route_list = * smtp.server2.com byname host_find_failed = ignore same_domain_copy_routing = yes no_more
请注意From:标题中提取域名的情况,并将其与smtp.server2.com进行比较。