MS Exchange 在邮件重定向期间破坏 DKIM

MS Exchange 在邮件重定向期间破坏 DKIM

(由于 SO 垃圾邮件过滤器的问题,一些名称已被替换)

背景:我们有一台小型服务器(约 50 个用户,在下面的日志中引用为 metalab.ifmoru),我们允许重定向到外部服务,例如 gmailcom。尽管如此,我们仍然使用两台服务器的设置:Edge(直接连接到 Internet)和 Mailbox(防火墙后面),使用 Microsoft Exchange 2013。我们有正确的 SPF 和 DKIM 记录,在 mail-tester 上的得分为 10 分(满分 10 分)。对于实际案例,外发交付正常,除了... 之外没有报告任何内容

问题:一些外部发件人(下面日志中的 mailru,此列表中的 Yahoo)使用严格的 DMARC 策略,通过我们的服务器进行的重定向会被拒绝,并出现如下典型错误消息:

mx.google.com 返回错误消息:

由于域名的 DMARC 政策,来自 mailru 的未经身份验证的电子邮件不被接受。如果这是一封合法邮件,请联系 mailru 域名的管理员。请访问切断一些与谷歌的链接了解 DMARC 计划。62si7948506lfu.198 - gsmtp

调查:根据 dmarc.org 的定义

DMARC 策略允许发件人表明他们的邮件受到 SPF 和/或 DKIM 保护,并告诉接收者如果这两种身份验证方法均未通过该如何处理 - 例如,垃圾邮件或拒绝该邮件。

为了再次检查 SPF 和 DKIM,我向我的 Google 收件箱发送了一条消息。看起来不错,它们都有:

Authentication-Results: mx.google.com;
       dkim=pass [email protected];
       spf=pass (google.com: domain of [email protected] designates 77.234.203.179 as permitted sender) [email protected];
       dmarc=pass (p=NONE dis=NONE) header.from=metalab.ifmoru

好的,我们检查一下重定向邮件的标题来自其他服务器,没有严格的 DMARC 策略。有时看起来也不错:

Received-SPF: pass (google.com: domain of [email protected] designates 192.30.252.199 as permitted sender) client-ip=192.30.252.199;
Authentication-Results: mx.google.com;
       dkim=pass (test mode) [email protected];
       spf=pass (google.com: domain of [email protected] designates 192.30.252.199 as permitted sender) [email protected];
       dmarc=pass (p=NONE dis=NONE) header.from=github.com

然而,有时它失败由于 DKIM 部分:

Authentication-Results: mx.google.com;
       dkim=pass [email protected];
       dkim=neutral (body hash did not verify) header.i=@gmailcom;
       spf=pass (google.com: domain of [email protected] designates 77.234.203.179 as permitted sender) [email protected];
       dmarc=fail (p=NONE dis=NONE) header.from=gmailcom

实验:

1)设置从我们的服务器(metalab.ifmoru)重定向到 google 到 gmailcom

2)设置从 Zimbra 服务器(其他地址)重定向到 google 到 gmailcom

3) 从 mailru 发送一封带有上述地址的信件From

结果:通过我们的服务器进行的重定向被拒绝,通过 Zimbra 的重定向则一切顺利。在检查 SMTP 标头时,我发现 1) 我们服务器收件箱中的消息 2) Zimbra 服务器上的 3) 来自 Zimbra 的重定向消息中有相同的标头块。如下:

DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mailru; s=mail2;
    h=References:In-Reply-To:Content-Type:Message-ID:Reply-To:Date:MIME-Version:Subject:Cc:To:From; bh=rZNB __cut__ znAs=;
    b=pIZR __cut__ A8aE=;
Received: from [84.204.20.115] (ident=mail)
    by f96.i.mailru with local (envelope-from <XXXXXXXXX@mailru>)
    id 1byY2P-0005Ep-6D; Mon, 24 Oct 2016 08:43:09 +0300
Received: from [84.204.20.115] by e.mailru with HTTP;
    Mon, 24 Oct 2016 08:43:09 +0300
From: =?UTF-8? __cut__ 0=?= <XXXXXXXXXXXXX@mailru>
To: =?UTF-8? __cut__ =?= <[email protected]>
Cc: =?UTF-8? __cut__ =?= <[email protected]>
Subject: =?UTF-8 __cut__ =?=
MIME-Version: 1.0
X-Mailer: mailru Mailer 1.0
X-Originating-IP: [84.204.20.115]
Date: Mon, 24 Oct 2016 08:43:09 +0300
Reply-To: =?UTF-8?B?0JDQudGA0Y0=?= <XXXXXXXXXXXXX@mailru>
X-Priority: 3 (Normal)
Message-ID: <147 __cut__ [email protected]>
Content-Type: multipart/alternative;
    boundary="--ALT--biYZ __cut__ 7789"
X-95568C8E: 26815A __cut__ 65AEC6
X-E1FCDC63: 1787D815 __cut__ 84B93
X-E1FCDC64: FAAF71 __cut__ 93F4C0D9
X-Mailru-Sender: D211C __cut__ DD1EA8939684724DAF05A372A3159
X-Mras: OK
X-Spam: undefined
In-Reply-To: <CADQB __cut__ [email protected]>
References: <CADQ __cut__ [email protected]>

至于被拒绝的消息,同一部分看起来非常不同 - 顺序被改变,一些标题条带化为 UTF-8,一些变为 koi-8 编码,x-tags 拼写从 Camel-Case 更改为小写,等等:

From: =?koi8-r? __cut__ =?= <XXXXXXXXXXXXX@mailru>
To: Kon __cut__ nko <[email protected]>
CC: Kon __cut__ nko <[email protected]>
Subject: =?koi8-r? __cut__ ?=
Thread-Topic: =?koi8-r?B __cut__ ?=
Thread-Index: AQHSLb __cut__ 65w==
Date: Mon, 24 Oct 2016 05:43:09 +0000
Message-ID: <0c14 __cut__ [email protected]>
References: <CADQB __cut__ [email protected]>
In-Reply-To: <CADQB __cut__ [email protected]>
Reply-To: =?koi8-r? __cut__ ==?= <XXXXXXXXXXXXX@mailru>
X-MS-Has-Attach:
X-MS-Exchange-Inbox-Rules-Loop: [email protected]
X-MS-TNEF-Correlator:
dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mailru;
 s=mail2;
   h=References:In-Reply-To:Content-Type:Message-ID:Reply-To:Date:MIME-Version:Subject:Cc:To:From;
 bh=rZNBy4 __cut__ nAs=;
      b=pIZRm8 __cut__ IA8aE=;
x-mailer: mailru Mailer 1.0
x-originating-ip: [84.204.20.115]
authentication-results: f96.i.mailru; auth=pass smtp.auth=XXXXXXXXXXXXX@mailru
 smtp.mailfrom=XXXXXXXXXXXXX@mailru
x-95568c8e: 26815 __cut__ 5AEC6
x-e1fcdc63: 1787 __cut__ 4B93
x-e1fcdc64: FAA __cut__ C0D9
x-mailru-sender: D2 __cut__ 3159
x-mras: OK
x-spam: undefined

看起来 MS Exchange 通过重写标头破坏了 DKIM。因此问题是:如何在通过 MS Echange 重定向期间防止标题被重写?

初步尝试:

1) 在 Exchange Server 2013 环境中,发件人的 DKIM 签名被破坏,CU6 应该可以解决此问题。没有帮助。目前使用 CU9。

2) 添加ms-Exch-Send-Headers-Routing到发送连接器。它控制消息中 RECEIVED 标头的保存。没有帮助。

检查了:

PS C:\Windows\system32> Get-SendConnector  | Get-ADPermission | where {$_.ExtendedRights -like "*routing*"} | fl user, extendedrights

添加链接 声誉不足,无法发帖。搜索关键词

  • 标头防火墙 Exchange 2013
  • 如何从 Exchange 中的标头中删除内部路由信息
  • Exchange 2013:应用标头防火墙
  • 在 Exchange Server 中使用标头重写
  • 边缘传输服务器上的地址重写

相关内容