Exim:如何关闭转发邮件的 DKIM?

And*_*rew 2 exim dkim

我按照文档在 Exim 中配置了 DKIM 用于发送邮件。Exim 签署所有外发邮件。但由于用户的.forward文件,其中一些传出的消息会被转发。这对我来说是一个问题,因为其中一些转发是垃圾邮件(我的 exim 配置不进行任何验证),我不想对它们承担责任。但我不知道如何配置 Exim 不签署这些消息。

我的配置基本上是 Debian Squeeze 默认配置,设置了一些DKIM_*宏。我可以发布更多详细信息,但我认为看到任何有条件 DKIM 签名的示例都会让我正确。

小智 5

有点像死尸帖子,但我只是用了一行:

dkim_private_key = ${if or {{!def:sender_host_address}{def:authenticated_id}}{DKIM_PRIVATE_KEY}{}}
Run Code Online (Sandbox Code Playgroud)

(其中 DKIM_PRIVATE_KEY 是一个宏,提供我的 dkim 私钥的路径)。

然后,如果这是“本地发起”消息(因此 $sender_host_address 未定义)或电子邮件来自经过身份验证的用户,则将设置 dkim_private_key,并且将对该消息进行签名。

否则(这应该意味着我们正在转发消息,假设我们不是中继),dkim_private_key 将是空字符串,这(根据规范)意味着消息不会被签名。