![Exim 无法向 local_domains 列表内的电子邮件发送邮件](https://linux22.com/image/618420/Exim%20%E6%97%A0%E6%B3%95%E5%90%91%20local_domains%20%E5%88%97%E8%A1%A8%E5%86%85%E7%9A%84%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6.png)
无法使用命令发送邮件
exim4 -bm [email protected]
查看此后的日志,我发现 R=dkimproxy 和 T=dkimproxy_smtp H=localhost[127.0.0.1]:10027。
我在日志中看到错误说未知用户
它会产生一个反弹,该反弹也使用相同的路由器和传输并且也会失败,并不可避免地在队列中被冻结。
如果我远程登录到服务器并从[电子邮件保护]帐户相同[电子邮件保护]电子邮件地址然后 R=send_to_xcalibre T=remote_smtp H=(我们的 MX 记录)。
我不知道如何让本地邮件采用与使用telnet生成的邮件相同的路径。
这个进出口设置是由一位前任员工完成的,不幸的是,他已经不知道这一切是如何运作的了。
任何援助将不胜感激。
编辑
这是 exim4.conf 的路由器部分
send_to_xcalibre:
驱动程序 = manualroute
域 = mydomain.com : myOtherDomain.com
条件 = “${if eq {$interface_port}{25} {1}{0}}”
传输 = remote_smtp
route_list = * primary-mail.mailhoster.co.uk
dkimproxy:
驱动程序 = manualroute
条件 = “${if eq {$interface_port}{10025} {0}{1}}”
传输 = dkimproxy_smtp
route_list = “* localhost byname”
自身 = 发送
传输配置
dkimproxy_smtp:
驱动程序 = smtp
端口 = 10027
allow_localhost
remote_smtp:
驱动程序 = smtp
headers_remove = X-Spam-Report:X-Spam-Bar:received
答案1
该问题与 DKIMproxy 包的工作方式有关,它通过服务器循环发送消息,第一次添加 DKIM 签名,然后第二次将其发送到目的地。
然而在第二次循环中,主机发生变化并成为本地主机并使用 dnslookup 路由器。
如果电子邮件来自本地主机,则 Exim 会立即尝试使用 dnslookup 路由器,但这似乎会失败。
我决定通过将这些消息重定向到另一个域来避免该问题,因此它不会被识别为本地主机。
我意识到这不是最好的答案,只是想为来到这里的人提供更多信息。