Exchange服务器修改邮件头及空白行导致入站邮件DKIM验证失败的问题求助
Exchange服务器修改邮件头及空白行导致入站邮件DKIM验证失败的问题求助
各位大佬好,最近我在给公司的MS Exchange服务器配置入站邮件的DMARC验证,目前用的是SpamAssassin in a Box,SPF查询都正常,但部分DKIM签名校验失败,邮件直接进了垃圾邮箱。我排查后怀疑是Exchange服务器修改了DKIM签名的邮件主体导致的,想请教下大家怎么解决!
今天同事搭了一台单独的VPS跑Exchange,我们俩做了个测试:订阅了同一个all-elektronics.de的电子通讯,结果他那边收到的邮件DKIM验证完全通过,我这边的却失败了。
对比两份邮件的头信息后,我发现了几个关键差异:
- 同事的Exchange服务器里,服务商发送的原始邮件头最后一项是Date头;但我这边的Exchange在这个Date头后面额外添加了一堆头信息。
- Exchange删除了原始邮件里的多余空白行:同事那边的原始邮件在头信息和正文之间有两个空白行(也就是两个LF),但我这边的Exchange在清理邮件时把这个多余的空白行删掉了。而DKIM计算邮件主体哈希的时候,是从头信息后的第一个空白行之后开始算起的——原始邮件里的第二个空白行其实属于正文的一部分,被删掉后直接破坏了DKIM的校验逻辑。
- 另外我的Exchange还修改了
Content-Transfer-Encoding头的大小写,这也导致了DKIM验证失败。
实在搞不定这个问题,有没有大佬遇到过类似情况,或者能给点解决思路?万分感谢!
备注:内容来源于stack exchange,提问作者Danny.Ando
相关产品推荐
相关产品推荐

