Ama*_*mal 9 email dkim opendkim
我在 CentOS 上安装了 OpenDKIM。我使用 postfix 作为 MTA 和 dovecot 用于 IMAP/POP3。
现在的问题是我正在尝试为我的域设置 DKIM。邮件是从子域 mail.example.com 发送的。问题是邮件没有被签名,/var/log/maillog并且没有与 test@mail.example.com 匹配的签名表。有人可以帮我解决这个问题吗?
这是 KeyTable 文件的内容
default._domainkey.mail.example.com mail.example.com:default:/etc/opendkim/keys/mail.example.com/default.private
Run Code Online (Sandbox Code Playgroud)
这是可签名的内容文件
*@mail.example.com default._domainkey.mail.example.com
Run Code Online (Sandbox Code Playgroud)
这是 TrustedHosts 内容文件
127.0.0.1
example.com
mail.example.com
Run Code Online (Sandbox Code Playgroud)
Ama*_*mal 10
感谢所有试图提供帮助的人.. 问题是当 Signingtable 文件中有 CR 字符时,opendkim 中的 refile 存在错误.. 所以,我以非 DOS 格式保存文件以删除 CR 字符,并且它工作得很好......
受信任的主机设置是 IP 地址或网络。据我所知,将主机名放在那里不会为您做任何事情。您将发送电子邮件的任何主机的 IP 地址放置到您希望它签名的服务器上,并且密钥/签名表条目确定发件人域是否保证它。
您的签名表的格式看起来正确,并且您的密钥表的格式看起来正确。我怀疑一旦您修复了受信任的主机列表,它就会解决您的问题。
1 月 27 日添加内容:
您在 opendkim.conf 中指定签名表的方式控制了文件的处理方式。由于您在签名表中使用“*@example.com”,因此您需要告诉 opendkim 它应该预期并处理通配符。在 opendkim 中执行此操作的方法是在配置指令前添加“refile:”。如果没有那个“refile:”部分,它期望与电子邮件地址完全匹配。确保它看起来像这样:
SigningTable refile:/etc/opendkim/signing_table
Run Code Online (Sandbox Code Playgroud)
1 月 31 日添加内容:
还要确保您的模式设置为“sv”(用于签名和验证)而不仅仅是“v”(仅验证,默认值)。