Postfix+OpenDKIM环境下邮件转发时DKIM验证失败的问题求助
Postfix+OpenDKIM环境下邮件转发时DKIM验证失败的问题求助
各位大佬好,我最近在Postfix搭配OpenDKIM(还有OpenDMARC)的环境里遇到了邮件转发的DKIM验证问题,查了好多文章都说“只要不修改邮件头字段,转发后DKIM签名应该依然有效”,但实际情况完全不是这样,折腾了好久没搞定,想请教下大家的解决方案。
先跟大家说下我的架构:
- 内部有一台MS Exchange服务器,藏在防火墙后面
- 中间是一台Linux服务器,跑Postfix+OpenDKIM+OpenDMARC,作为Exchange和互联网之间的中转节点
正常收发邮件都没问题:
- 外部用户(比如a@sourcedomain.com)发邮件给内部用户(user@mydomain.com),先到Linux的Postfix,验证DKIM签名后成功转发到Exchange
- 内部用户回复的邮件走这台Linux服务器时,Postfix会自动给邮件加上我们mydomain.com的DKIM签名,一切正常
但问题出在内部用户开启邮件转发到外部邮箱的时候:当user@mydomain.com把收到的邮件转发到b@destination.domain.com时,Linux的Postfix看到邮件的From字段是a@source.domain.com,就会尝试验证这个源域名的DKIM签名,结果直接失败了。下面是对应的日志内容:
2024-01-08T13:00:42.599247+01:00 myserver postfix/smtpd[11432]: 9242D1E00DE: client=unknown[10.0.0.1] 2024-01-08T13:00:42.601628+01:00 myserver postfix/cleanup[11423]: 9242D1E00DE: warning: header Subject: =?utf-8?B?VcW8eXRrb3duaWsgU3p5bWHFhHNrYSBvcHVibGlrb3dhxYIgd2lhZG9tb8Wb?=? =?utf-8?B?xIc=?= from unknown[10.0.0.1]; from=<user@mydomain.com> to=<b@destination.domain.com> proto=ESMTP helo=<smtp.mydomain.com> 2024-01-08T13:00:42.601745+01:00 myserver postfix/cleanup[11423]: 9242D1E00DE: message-id=<243e3be85441415a829c5e6ac0b54ada@smtp.mydomain.com> 2024-01-08T13:00:42.606954+01:00 myserver opendkim[975]: 9242D1E00DE: no signing domain match for 'source.domain.com' 2024-01-08T13:00:42.607061+01:00 myserver opendkim[975]: 9242D1E00DE: no signing subdomain match for 'source.domain.com' 2024-01-08T13:00:42.609717+01:00 myserver opendkim[975]: 9242D1E00DE: s=selector2 d=source.domain.com a=rsa-sha256 SSL error:02000068:rsa routines::bad signature 2024-01-08T13:00:42.609953+01:00 myserver opendkim[975]: 9242D1E00DE: bad signature data 2024-01-08T13:00:42.610192+01:00 myserver postfix/cleanup[11423]: 9242D1E00DE: milter-reject: END-OF-MESSAGE from unknown[10.0.0.1]: 5.7.0 bad DKIM signature data; from=<user@mydomain.com> to=<b@destination.domain.com> proto=ESMTP helo=<smtp.mydomain.com>
我已经把内部Exchange服务器的IP加到InternalHost配置里了,现在纠结两个方向:
- 要不要用我们mydomain.com的密钥去签这些转发的邮件?感觉这样不太合理
- 还是应该让这些转发的邮件原封不动通过Postfix,跳过DKIM验证?这个方向感觉才对,但我不知道怎么配置
有没有大佬能指点下具体该怎么操作?
备注:内容来源于stack exchange,提问作者user71061
相关产品推荐
相关产品推荐

