Exim4 root 邮件转发失败

Exim4 root 邮件转发失败

在有人问之前,是的,我已经阅读了关于此问题的其他 50 个帖子,但没有一个起作用。(而且我的声誉很低,似乎无法对现有帖子发表评论,因此不得不重新开始此帖子。)

我已成功设置 mdadm 转发至[电子邮件保护](由 Google 托管)使用 exim4,但发送给 root 的任何电子邮件都拒绝正确路由。最终所有电子邮件都直接发送到[电子邮件保护],它会崩溃,因为它目前不存在。我运行了 newalises,重新启动了 exim4 等,但没有任何效果。我知道这应该很简单,但我只是不太明白问题是什么。

在配置文件出现之前,有几个简短的说明:

  1. rDNS 未设置,因为这是家中的随机服务器。(域名的 MX 记录指向 gmail,因为 gmail 正在处理实际的域名电子邮件托管。)
  2. 此主题似乎接近正确,但我的服务器的主机名不是 asdf.example.org 格式,所以我不太清楚如何翻译它。(各种尝试都没有成功。)

系统主机名:

root@zetaServer:~# hostname
zetaServer

/etc/aliases 的内容:

postmaster:    root
root: [email protected], /root/mailbox

/root/.forward 的内容:

[email protected]

/etc/exim4/update-exim4.conf.conf 的内容:

dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1 ; ::1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.gmail.com::587'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

发送测试电子邮件后 /var/log/exim4/mainlog 的内容:

root@zetaServer:~# echo test | mail -s "test message" root
root@zetaServer:~# tail /var/log/exim4/mainlog -n 3
2016-11-24 20:55:29 1cA7bl-0006Xf-K0 <= [email protected] U=root P=local S=482
2016-11-24 20:55:30 1cA7bl-0006Xf-K0 => [email protected] R=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com [74.125.28.109] X=TLS1.2:RSA_AES_128_CBC_SHA1:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=smtp.gmail.com" A=gmail_login C="250 2.0.0 OK 1480046130 c15sm63433639pfd.36 - gsmtp"
2016-11-24 20:55:30 1cA7bl-0006Xf-K0 Completed

Gmail 错误:

Delivery to the following recipient failed permanently:

[email protected]

我知道我必须接近...只是需要一点帮助。

答案1

由于您使用的是家庭网络,因此您不太可能获得有效的 rDNS,并且您的主机名可能无效。不过,您应该有类似 的内容myhost.example.org

尝试在 中为 gmail 配置密码条目/etc/exim/passwd.client。检查 auth 配置以验证客户端身份验证代码未被注释掉。(我相信默认情况下启用了它。)使用您的 gmail 帐户的有效凭据。

检查日志文件中/var/log/exim4是否有任何消息表明邮件发送失败的原因。失败的邮件应该被退回到本地帐户。日志文件应该显示退回邮件的本地传递。

Exim 不会以 root 身份进行投递,因此如果您希望 root 进行本地投递,请使用real-root本地地址。最好将 root 别名为本地用户,并让该用户别名为远程投递。这样可以更轻松地进行退回和本地投递。对于使用智能主机设置进行本地投递,在所需用户前加上前缀,real-将绕过远程别名。

答案2

啊哈!我明白了!

我需要将我的服务器本身的主机名(zetaServer)设置为系统邮件名称,而不是 example.org!:)

相关内容