我目前正在使用中继服务(mailchannels 和 sendgrid)每月通过我们的 cPanel 服务发送大约 20 万条消息,但我只想路由具有 HOTMAIL 收件人的消息(因为他们是我们中继邮件的主要原因...我们的消息从未使用我们的 ips 传递到邮箱——GMAIL 和所有其他提供商的邮件均没有问题)。
我的配置如下:
SECTION: AUTH
sendgrid_login:
driver = plaintext
public_name = LOGIN
client_send = : USER : PW
-
Section: PREROUTERS
send_via_sendgrid:
driver = manualroute
domains = ! +local_domains
transport = sendgrid_smtp
route_list = "* smtp.sendgrid.net::587 byname"
host_find_failed = defer
no_more
-
Section: TRANSPORTSTART
sendgrid_smtp:
driver = smtp
hosts = smtp.sendgrid.net
hosts_require_auth = smtp.sendgrid.net
hosts_require_tls = smtp.sendgrid.net
我知道我应该改变PREROUTERS部分并在那里改变一些条件,但不知道该怎么做!
任何帮助将不胜感激。
谢谢!
答案1
条件domains
控制哪些“收件人”地址使用此规则。当前条件是“不是本地域组中的地址”。更改此行domains
以匹配 hotmail.com:
send_via_sendgrid:
driver = manualroute
domains = hotmail.com
transport = sendgrid_smtp
route_list = "* smtp.sendgrid.net::587 byname"
host_find_failed = defer
no_more
答案2
对于 WHM/Cpanel,对于我来说,解决 Cpanel 设置 exim 问题的最佳方法是:
创建文件 /etc/staticroutes
hotmail.com: IP_OF_SMARTHOST__OR__FQDN
otherdestinationdomain: IP_OF_SMARTHOST__OR__FQDN
...
转到 Exim 配置管理器 --> 高级编辑器 --> 部分:POSTMAILCOUNT
static_route:
driver = manualroute
transport = remote_smtp
route_data = ${lookup{$domain}partial-lsearch{/etc/staticroutes}}
通过这种配置,您可以使用多个智能主机和不同的路由,并且当 Cpanel 更新 exim 时,您可能会丢失更改。