DMARC/SPF/DKIM未能与第三方邮件进行身份验证

7
我们最近为我们的域名实施了DMARC记录:
"v = DMARC1; p = quarantine; pct = 100; rua = mailto:me@mydomain.com"
(隔离100%未经验证的电子邮件并将聚合报告发送给“我”)
我们使用第三方供应商发出邀请。 供应商从invites@invites.vendordomain.com发送电子邮件,然后通过邮件中继“smtp3.mailrelaydomain.it”发送。 我还知道邮件中继使用单个IP地址。
该地址包含在我们的SPF记录中:
"v = spf1 ... [SNIP引用其他邮件服务器SNIP] ... ip4:[邮件中继的IP地址]〜all"
当我使用供应商的服务发送邀请时,该消息被隔离。
当我查看聚合DMARC报告时,我看到邀请:
- 被认为来自SPF授权服务器 - 通过发送者域(invites@invites.vendordomain.com)的原始SPF身份验证 - 通过邮件中继域(smtp3.mailrelaydomain.it)的原始DKIM身份验证 - 对于mydomain,无论是DKIM还是SPF均未通过DMARC身份验证
以下是邀请的示例标头。
Delivered-To: someone@mydomain.com
Received: by 10.64.252.9 with SMTP id zo9csp100581iec;
        Wed, 21 Oct 2015 11:40:13 -0700 (PDT)
X-Received: by 10.55.195.147 with SMTP id r19mr12995508qkl.12.1445452813709;
        Wed, 21 Oct 2015 11:40:13 -0700 (PDT)
Return-Path: <invites@invites.vendordomain.com>
Received: from smtp3.mailrelaydomain.it (smtp3.mailrelaydomain.it. [ip for mail relay])
        by mx.google.com with ESMTP id w15si9297939qha.131.2015.10.21.11.40.13
        for <someone@mydomain.com>;
        Wed, 21 Oct 2015 11:40:13 -0700 (PDT)
Received-SPF: pass (google.com: domain of invites@invites.vendordomain.com designates [mail relay ip] as permitted sender) client-ip=[mail relay ip];
Authentication-Results: mx.google.com;
       spf=pass (google.com: domain of invites@invites.vendordomain.com designates [mail relay ip] as permitted sender) smtp.mailfrom=invites@invites.vendordomain.com;
       dkim=pass header.i=@mailrelaydomain.it;
       dmarc=fail (p=QUARANTINE dis=QUARANTINE) header.from=mydomain.com
Received: from FS-S05.vendorparentdomain.com (unknown [vendor parent ip])
    (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
    (No client certificate requested)
    by smtp3.mailrelaydomain.it (Postfix) with ESMTPSA id 23387A0CBC
    for <someone@mydomain.com>; Wed, 21 Oct 2015 15:07:35 -0400 (EDT)
DKIM-Signature: [DKIM Content]
Content-Type: multipart/alternative;
 boundary="===============2166944298367943586=="
MIME-Version: 1.0
Subject: Please take our survey
From: Me <me@mydomain.com>
To: Someone Else <someone@mydomain.com>
Cc: 
Date: Wed, 21 Oct 2015 18:39:48 -0000
Message-ID: <20151021183948.27448.90706@FS-S05.vendorparentdomain.com>
List-Unsubscribe: [unsubscribe link],
 <mailto:invites@invites.vendordomain.com>
Reply-To: Me <me@mydomain.com>
X-Sender: invites@invites.vendordomain.com

我认为问题与消息中的发件域与邮件信封域不匹配有关。但是,供应商无法更改设置(即,信封始终来自供应商域),因此任何使DMARC起作用的机会都只能从我的端口进行。

知道SPF记录可以(并且确实)将邀请标识为来自SPF授权服务器,是否还有其他设置或记录可以添加,以确保来自供应商的邀请也通过DMARC身份验证?

阅读了几篇在线文章和“DMARC -spf and DKIM record queries” ,我怀疑我没有希望,但必须明确地提出问题,并针对我的情况进行特别询问,以确保。

谢谢


我同意,SPF对齐不匹配。但是只要SPF或DKIM对齐通过,您应该就可以通过DMARC。您隐藏了DKIM-Signature,因此很难确定您是否在两个方面都失去了对齐。这是一篇很好的文章,解释了标识符对齐 - Henry
1个回答

12

你说得没错,除非供应商能做出一些改变,否则你很难有所作为。出现问题的是标识符对齐-https://www.rfc-editor.org/rfc/rfc7489#section-3.1 -因为被认证的内容(invites.vendordomain.com 通过 SPF)与用户看到的域名(me@mydomain.com)不对齐,消息因此无法通过 DMARC 验证。

有三种选择:

  • 停止在供应商处使用您域的 From: 头发送邮件;您仍然可以使用自己地址的 Reply-To: 头。

  • 让供应商将邮件来源对齐到您的域。如果他们不这样做,就无法通过 DMARC,并且在某个时候他们会想要通过 DMARC,否则人们会找到其他解决方案。您可以让他们使用 vendorname.mydomain.com 的信封发件人并设置一个 MX 记录以支持退回处理。这已经是最佳实践了。

  • 让供应商使用 DKIM 签名并使用对齐的 DKIM 签名。这也是最佳实践。您只需要通过 SPF 或 DKIM 就可以通过验证,而 DKIM 通过更有价值(因为在许多情况下可以通过转发进行),比 SPF 更好,因此如果我是你,我个人会优先考虑这个选择。

早在2012年和2013年,许多供应商都反对这两种选项,但老实说,我很长时间以来(我100%的工作时间都在处理 DMARC)都没有见过不支持至少对齐的 DKIM 的供应商。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接