前言

目前E5开发者订阅是可以自己免费申请到的,onedrive空间有5TB * 25,还是非常不错的
这次折腾的时候遇到了5.7.705的错误,但过一个星期后再去使用就正常了,比较奇怪,也算是折腾成功了

Pasted image 20230331214614.png

正文

绑定域名邮箱

进入网址:Admin center
点击添加域
这里演示向域的 DNS 记录添加 TXT 记录
点击向域的 DNS 记录添加 TXT 记录

Pasted image 20230331214723.png

点击继续,后续会出现提示,按照提示在自己的域名界面添加相应记录
Pasted image 20230331215740.png

完成后点击验证,按照提示继续添加记录
Pasted image 20230331220047.png

设置好后可看到以下界面
Pasted image 20230331220122.png

添加邮箱别名

可通过管理用户别名来进行添加用户邮箱

Pasted image 20230331221751.png

添加更多的域名前缀

这里的域名前缀指的是xxx.onmicrosoft.com这种前缀
地址:https://aka.ms/SPORenameAddDomain

Pasted image 20230331225753.png

点击添加自定义域即可,注意如果想要上面的形式需在前缀后面填写`.onmicrosoft.com

开启SMTP

打开PowerShell

安装 Exchange Online PowerShell 模块

输入以下命令

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 3.1.0

输入Y进行安装
如需其他版本可自行安装:PowerShell Gallery | ExchangeOnlineManagement 3.1.0

加载模块

安装完成后打开 PowerShell 窗口,并通过运行以下命令加载模块:

Import-Module ExchangeOnlineManagement

连接并进行身份验证

输入以下命令

Connect-ExchangeOnline -UserPrincipalName <mail>

<mail>替换成管理员邮箱
在打开的登录窗口中,输入密码,然后单击登录

Pasted image 20230408103237.png

开启SMTP权限

全部租户开启

Set-TransportConfig -SmtpClientAuthenticationDisabled $false

单个租户开启

Set-CASMailbox -Identity <MailboxIdentity> -SmtpClientAuthenticationDisabled $false

<MailboxIdentity>填自己想开启SMTP权限的邮箱

验证

Get-CASMailbox -Identity <MailboxIdentity> | Format-List SmtpClientAuthenticationDisabled

<MailboxIdentity>填自己想开启SMTP权限的邮箱
如图所示,显示False即代表成功

Pasted image 20230408011431.png

防止SMTP源站IP暴露

进入Exchange 管理中心-邮件流-规则-添加规则,添加如下规则

Pasted image 20230408110816.png

分别添加这两个规则并启用

Received

X-Originating-IP

创建并启用 DKIM

介绍

DKIM 是三种身份验证方法(SPF、DKIM 和 DMARC)之一,可帮助防止攻击者发送看起来像来自你的域的邮件。

可以使用 DKIM 将数字签名添加到出站电子邮件的邮件头中。 配置 DKIM 时,将使用加密身份验证授权域关联到电子邮件或对电子邮件进行签名。 从域获取电子邮件的电子邮件系统可以使用此数字签名来帮助验证传入电子邮件是否合法。

基本来说,私钥对域的传出电子邮件的邮件头进行加密。 公钥在域的 DNS 记录中发布,接收服务器可以使用该密钥解码签名。 DKIM 验证帮助接收服务器确认邮件确实来自你的域,而非欺骗分子。

创建DKIM

在搜索栏搜索DKIM
进入以下界面

Pasted image 20230407194215.png

点击需要使用的域名后创建DKIM密钥
会得到类似以下内容

Host Name : selector1._domainkey

Points to address or value: selector1-xxx-com._domainkey.xxx.onmicrosoft.com

Host Name : selector2._domainkey

Points to address or value: selector2-xxx-com._domainkey.xxx.onmicrosoft.com

启用DKIM

在域名界面添加相应CNAME记录(两条都要加),TTL设置为1小时

Pasted image 20230407195250.png

设置好后返回启用DKIM
Pasted image 20230407195724.png

点击轮换DKIM

验证

此步可跳过

使用 PowerShell 为自定义域启用 DKIM 签名

打开PowerShell

安装 Exchange Online PowerShell 模块

如果已安装可跳过此步
输入以下命令

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 3.1.0

输入Y进行安装
如需其他版本可自行安装:PowerShell Gallery | ExchangeOnlineManagement 3.1.0

加载模块

安装完成后打开 PowerShell 窗口,并通过运行以下命令加载模块:

Import-Module ExchangeOnlineManagement

连接并进行身份验证

输入以下命令

Connect-ExchangeOnline -UserPrincipalName <mail>

<mail>替换成管理员邮箱
在打开的登录窗口中,输入密码,然后单击登录

Pasted image 20230408103237.png

启用签名

输入以下命令:

Set-DkimSigningConfig -Identity <Domain> -Enabled $true

<Domain>替换成自己的自定义域名

验证

Get-DKIMSigningConfig -Identity <Domain>

<Domain>替换成自己的自定义域名
https://admin.microsoft.com/AdminPortal/?searchSolutions=DKIM#/homepage
输入后如果返回值为True则成功

Pasted image 20230408012549.png

参考资料

如何在自定义域中使用 DKIM 发送电子邮件 - Office 365 | Microsoft Learn
连接 Exchange Online PowerShell | Microsoft Learn
使用 DMARC 验证电子邮件,设置步骤 - Office 365 | Microsoft Learn
Exchange 文档 | Microsoft Learn