如何在Exchange Server 2010/2013上配置DKIM
它开始于我决定减少普通电子邮件的数量,这些邮件通常会进入收件人邮箱中的垃圾邮件文件夹,但却没有回复。到那时,SPF已经在域中配置好了,但是对于某些邮件服务器来说,这似乎是不够的。因此,在msexchangeserver2010中配置DKIM的想法应运而生。
默认情况下,MS Exchange Server不支持DKIM。在寻找解决方案时,找到了一个自由传输代理 交换DKIM签名者。
如果安装了.NET Framework 4.5,则可以自动安装代理。否则,我们必须手动安装和配置exchangedkim Signer。你可以在官方网站上找到关于如何手动安装的详细指南。
我决定去试试自动安装。
备份Exchange服务器以防万一
下载配置.DkimSigner.zip从https://github.com/Pro/dkim-exchange/releases/latest
将其解压缩到任何文件夹并运行 配置.DkimSigner.exe
点击 安装
在下一个窗口中选择要安装的版本
点击 安装按钮,等待安装完成
关上窗口
新的Exchange传输代理已安装。现在你必须配置它。与安装一样,我们也可以手动执行(通过编辑文件C:\Program Files\Exchange DkimSigner\设置.xml),或者在GUI中(通过运行C:\Program Files\Exchange DkimSigner\配置.DkimSigner.exe).
单击 配置并确保Exchange DKIM Signer具有最低优先级(在列表中排在最后)。在其他运输代理商进行所有可能的修改后,必须在最后一步签署这些信函。
在DKIM设置选项卡中,指定要签名的字段。默认情况下,它们是From、Subject、To、Date、Message-ID。
我们可以在“域设置”选项卡中配置域。指定域的名称、选择器(DNS名称)和具有密钥的文件。密钥可以在这里生成。我用OpenSSL得到了几个密钥:
openssl genrsa -out private.pem 1024 openssl rsa -pubout -in private.pem -out public.pem
设置完所有参数后,单击“保存域”。理论上,设置应该立即自动应用,但我已经重启了microsoftexchange传输以防万一。
只剩下两个DNS条目需要配置:
_domainkey.<your_domain_name>. TXT "t=s; o=~;"
mail._domainkey.<your_domain_name>. TXT "v=DKIM1; k=rsa; t=s; p=<public_key_contents>"
o=参数可以取以下值:
“~”-来自此域的一些电子邮件已签名
“-”—来自此域的所有电子邮件都已签名
“.\u domainkey”之前的“Mail”是选择器名称。
还建议在DNS中指定ADSP:
_adsp._domainkey.<your_domain_name>. TXT "dkim=all"
dkim参数可以取以下值之一:
“未知”-表示没有入口
“全部”-所有电子邮件都必须签名
“可丢弃”-不得接收未签名的电子邮件
比如,发一封短信到Gmail邮箱,在邮件头中查找 dkim=pass: