![exim4 将邮件作为密件抄送给根别名而不是地址?](https://linux22.com/image/723130/exim4%20%E5%B0%86%E9%82%AE%E4%BB%B6%E4%BD%9C%E4%B8%BA%E5%AF%86%E4%BB%B6%E6%8A%84%E9%80%81%E7%BB%99%E6%A0%B9%E5%88%AB%E5%90%8D%E8%80%8C%E4%B8%8D%E6%98%AF%E5%9C%B0%E5%9D%80%EF%BC%9F.png)
我正在尝试配置 exim4 将所有电子邮件发送到我的 Gmail 帐户(包括发送给 root 的电子邮件)。
它几乎可以正常工作,但我的 Gmail 地址位于收件人字段的密件抄送字段中。
这是我用来发送测试消息的命令:
echo 'Just testing' | mail root -s 'Testing e-mail'
...以下是 Gmail 的结果:
Bcc: [email protected]
Return-Path: <[email protected]>
From: John Smith <[email protected]>
Subject: Testing e-mail
To: <[email protected]>
Date: Tue, 12 Jun 2018 11:00:55 -0400
Just testing
这是我的 /etc/aliases 代码片段:
# /etc/aliases
root: [email protected]
我可能做错了什么?我不确定为什么 exim4 读取别名文件并将其用作 BCC 字段而不是 TO 字段?
答案1
当邮件转发到外部地址时,默认情况下只有信封发件人被重写。RFC 5322, 3.6.6不需要目标地址字段不做任何修改,这通常不是一个坏主意,因为你的目的是合法的。来自 Exim地址重写:
一般来说,重写来自您自己的系统或域的地址具有一定的合法性。重写其他地址应谨慎进行,并且只在特殊情况下进行。Exim 的作者认为,重写应谨慎使用,主要用于“规范化”您自己域中的地址。虽然有时可以将其用作路由工具,但强烈不建议这样做。
重写标头可能会有问题,例如,如果你使用以下方式签名消息:密钥管理信息系统因为签名可能不匹配。在这种情况下,如果标To:
头被签名覆盖,即在h=
签名标头字段标头字段的标签DKIM-Signature
(RFC 6376, 3.5)。此外,由于发送到的消息root@host
通常是与管理单个服务器相关的消息,因此实际上最好知道原始目的地以区分服务器。
如果您仍想重写此地址,则需要为其添加重写规则(begin rewrite
在配置文件,有时在/etc/exim/conf.d/rewrite.conf
)。例如
root@host "Your Name <[email protected]>" t