DKIM 不使用别名地址签名 - 不是内部的,未经过身份验证

use*_*460 7 postfix gmail alias dkim opendkim

我安装了 postfix、dovecot、opendkim 和 postsrsd。我试图将邮件从 alias@example.com 转发到 myemail@gmail.com,并让他们用 DKIM 签名。

我使用postrsd以便 SPF 记录通过转发的电子邮件。

但是,当我从 icloud 帐户向 alias@example.com 发送电子邮件时,该邮件会发送到我的 gmail 收件箱,但并未由 DKIM 签名。

这是我的日志的输出:

postfix/smtpd:      connect from st11p01im-asmtp001.me.com[17.172.204.151]
postfix/smtpd:      BC23640B53: client=st11p01im-asmtp001.me.com[17.172.204.151]
postsrsd:           srs_forward: <myicloudemail@icloud.com> rewritten as <SRS0=zgyz=HT=icloud.com=myicloudemail@hostname.myemailserver.com>
postfix/cleanup:    BC23640B53: message-id=<6fd8e885-4be1-4a37-983f-3d6f18f3b73a@me.com>
opendkim:           BC23640B53: st11p01im-asmtp001.me.com [17.172.204.151] not internal
opendkim:           BC23640B53: not authenticated
opendkim:           BC23640B53: no signature data
Run Code Online (Sandbox Code Playgroud)

我查看了http://seasonofcode.com/posts/setting-up-dkim-and-sr​​s-in-postfix.html并且我所有的配置文件似乎都是正确的。

从我在网上看到的情况来看,“非内部,未经过身份验证”消息意味着该域不存在于 中/etc/opendkim/TrustedHosts,但日志中列出的域 ( st11p01im-asmtp001.me.com ) 不是我的域。我相信me.com属于 Apple。

DKIM 是否无法使用 SRS 使用别名地址进行签名?

更新:
在 /etc/postfix/main.cf 中禁用了 postrsd,问题仍然存在。因此,问题不在于 postrsd,而在于 opendkim 没有为别名地址签署邮件。

我认为这是因为 opendkim 查看发送邮件的原始主机名,在我的情况下是st11p01im-asmtp001.me.com,因此没有签署它,因为该地址未在/etc/opendkim/TrustedHosts.

有没有办法让 opendkim 使用别名地址?

mas*_*oeh 5

对于您的概念,这里是理想的工作流程

  1. 通过 postfix 接收外部邮件
  2. OpenDKIM 验证 DKIM 签名(如果存在)
  3. Postfix 重写From:标头,使其来自您控制的域,例如 example.com
  4. OpenDKIM 将 DKIM 重新签名为重写的电子邮件(并删除原始 DKIM 签名,如果存在)。
  5. Postfix 将其传送到别名地址。

不幸的是,postfix 和 OpenDKIM 在发送到最终目的地之前不支持 DKIM 签名。OpenDKIM 仅支持仅在 postfix 接收电子邮件时运行的milter 接口。是的,您可以使用postfix 多实例之类的解决方法,因此第一个实例将进行重写,第二个实例将进行签名,但我认为在您的情况下不值得。