我有一台运行Exim 4.72的服务器,它的设置类似于Exchange的“边缘传输”angular色:它将邮件从互联网转发到Exchange,并将邮件从交换机转发到互联网。
我在Exim中为发送邮件configuration了DKIM。 当邮件直接发送到Exim时,它正常工作; Gmail报告正文哈希是正确的。 当发送到Exchange,然后转发到Exim,DKIM主体散列检查失败。
我尝试了简单轻松的大炮。 任何人都有类似的经历或有任何见解?
像你一样,我怀疑有些东西正在被过渡。 您的exim系统是否偶然地为每个传出消息添加一个股票样板文件? DKIM签名必须在添加之后进行,并包含这些更改,以便将其包含在主体哈希中。
通用testing程序:
在服务器上,使用如下命令将消息传递给exim:
exim -d -t <test.eml> test.out 2>&1
完成后,会有一个名为“test.out”的结果文件。 编辑该文件并查找“PDKIM”。 首先是标准化的机构。 第四例左右是标准化的标题。 看看这些部分,看看是否有什么变化,与你发送的原始信息和收到的信息相比。
我所看到的典型变化通常与mime版本,mimetypes,内容传输编码,内容types或字符集在传输中被更改有关。 但是,你说你的头检查通过,你的身体检查没有。 所以这使得它更复杂。