更新于 2016年8月24日

如今在微软更新了 Office 365 和 Exchange Online 的产品线之后,已经不再必须通过手动开启 DKIM 签名,如果你不开启自己定义的 DKIM 头,Office 365 和 Exchange Online 会为每一封从微软服务器发出的邮件签名(通过 xx.onmicrosoft.com 这个域名)。


上周我在检查微软 Office365 的开发路线图( Office 365 Roadmap )的时候发现 Office365 的 Exchange Online 邮件系统现在已经支持 DKIM 强制签名了,关于 DKIM 对于保证一个邮件系统安全可靠的重要性无需多言,微软对于这项功能的开发周期已经持续了两年之久。

关于如何开启 Exchange Online 邮件系统的 DKIM 功能,微软并没有相关的详细说明文章,但是相关的步骤可以参照之前的一些已有的经验摸索出来。

首先,需要在 DNS 解析记录中添加两条 CNAME 记录,格式如下:

selector1._domainkey.xxx.com. CNAME指向到 selector1-xxx-com._domainkey.onmicrosoft.com
selector2._domainkey.xxx.com. CNAME指向到 selector2-xxx-com._domainkey.onmicrosoft.com

其中 xxx.com 替换为自己的域名


然后,需要在服务器端开启 DKIM 功能,整个过程需要手动操作,需要用到 Windows 系统自带的 PowerShell 软件进行 remote 操纵。

在本地电脑上,通过 PowerShell 运程连接到 Exchange Online 服务器,具体步骤如下:

第1步,提权,需要用 administrator 权限打开 Powershell ,然后输入下面的命令授权:

Set-ExecutionPolicy RemoteSigned

第2步,连接服务器,需要在上一步的同一窗口下,同时需要管理员权限,不可用本地权限,否则会出现写入权限错误:

$UserCredential = Get-Credential

在弹出的对话框中,输入自己的邮箱管理员帐户信息。


第3步,建立新会话(session):

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

第4步,进入新建的会话:

Import-PSSession $Session

第5步,开启 DKIM 功能:

New-DkimSigningConfig –DomainName [your domain name] –Enabled $true

如果开启成功,则会显示类似如下的提示界面:

powershell
powershell

Comments
Write a Comment
'