为什么 sendmail 会更改 FROM 域以及如何配置正确的域?

为什么 sendmail 会更改 FROM 域以及如何配置正确的域?

我安装了 Jenkins 并将其配置为发送电子邮件,发送方为“[电子邮件保护]“但发送电子邮件时地址总是会更改,并且我收到的邮件是从”[电子邮件保护]“。

我已经安装了 Sendmail,并且 Jenkins 配置为使用 127.0.0.1 作为邮件服务器。

知道为什么 Sendmail 在发送电子邮件时会替换 FROM 域吗?

服务器的主机名已正确设置(当我运行时hostname我确实得到了“jenkins.example.com”)。

同样,如果我从命令行发送电子邮件echo "This is the body" | mail -s "Subject" [email protected]

这个域名从哪里获取default.vps.example.com?这个默认域名在哪里可配置?

LE:在我的 sendmail.mc 中,我有define(confDOMAIN_NAME,jenkins.domain.com')dnl我生成了 sendmail.cf 文件m4 sendmail.mc > sendmail.cf并重新启动了 sendmail。仍然不起作用。

LE2:

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> canonify           input: jenkins @ jenkins . example . com
Canonify2          input: jenkins < @ jenkins . example . com >
dns_getcanonname(jenkins.example.com, trymx=1)
dns_getcanonname: trying jenkins.example.com. (AAAA)
    YES
dns_getcanonname: trying default.vps.example.com. (AAAA)
    NO: errno=0, h_errno=4
dns_getcanonname: trying default.vps.example.com. (A)
    YES
dns_getcanonname: default.vps.example.com
Canonify2        returns: jenkins < @ default . vps . example . com . >
canonify         returns: jenkins < @ default . vps . example . com . >
>

答案1

您的 sendmail 很可能用CNAME“真实名称”替换带有 DNS 记录 (DNS 别名) 的名称。

以 root 身份执行 它应该向您显示电子邮件地址预处理期间的 DNS 查询(通过规则集)。echo '3 [email protected]' | sendmail -d8.20 -bt
3

http://cr.yp.to/im/cname.html

DJ伯恩斯坦
邮件中的 CNAME 记录
RFC 821禁止在 SMTP 请求中的域名中使用任何“昵称或别名”。RFC 1123特别禁止在 MAIL 和 RCPT 请求中使用 DNS 别名(具有 CNAME 记录的域)。sendmail
接受具有 CNAME 记录的域。它会在 RCPT 中使用该域之前用 CNAME 值替换该域,除非它充当哑客户端。类似的评论适用于 qmail 和其他邮件程序。

相关内容