好吧,问题名称有点奇怪,但我不太确定该如何措辞。我有一台主机名为 的机器,foo.example.com
该机器具有域 的 SSL 证书mail.example.com
。我还有以下 DNS 记录example.com
:
A foo.example.com 12.34.56.78
CNAME mail.example.com foo.example.com
MX mail.example.com
我最近了解到RFC 2181(第 10.3 节)指出 MX 记录的值“不能是别名”。
我第一次尝试修复此问题是将 MX 记录的值更改为foo.example.com
,但是这会导致问题,因为证书上的名称是 ,mail.example.com
而我目前无法承担购买新证书的费用。
我的第二次尝试是添加一个 A 记录以mail.example.com
指向12.34.56.78
,但这里的问题是 SMTP 服务器 (Postfix) 提供的主机名与 MX 记录中的域不匹配,这可能会导致某些邮件客户端出现问题。此外,反向 DNS 记录也不匹配。
不幸的是,更改机器本身的主机名不是mail.example.com
一个选择,因为它用于使用其他主机名的其他事物。
有没有我没想过的其他解决方案?奇怪的是,在过去一年左右的时间里,它似乎运行得很好,但由于我的配置实际上无效,我想纠正它,以防它在某个地方引起问题。
答案1
是的,MX 不应指向 CNAME。在这种情况下,只需为 mail.example.com 创建另一个 A 记录:
A foo.example.com 12.34.56.78
A mail.example.com 12.34.56.78
MX mail.example.com
由于证书适用于 mail.example.com,因此它与用于连接的名称相匹配,因此证书可以成功验证。PTR 记录应该指向以便mail.example.com
与垃圾邮件过滤器配合良好。