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-srs-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 使用别名地址?
对于您的概念,这里是理想的工作流程
From:标头,使其来自您控制的域,例如 example.com不幸的是,postfix 和 OpenDKIM 在发送到最终目的地之前不支持 DKIM 签名。OpenDKIM 仅支持仅在 postfix 接收电子邮件时运行的milter 接口。是的,您可以使用postfix 多实例之类的解决方法,因此第一个实例将进行重写,第二个实例将进行签名,但我认为在您的情况下不值得。