Microsoft 365 搭建域名邮箱并开启 Catch-all

既然花钱买了域名,为啥不顺便搞个域名邮箱呢?在对比了各种域名邮箱服务(Yandex, Zoho, Cloudflare, iCloud)后,本着白嫖的原则,最终选择了 Microsoft 365 (aka Office 365) E5 开发者订阅托管域名邮箱。下面就简单介绍一下域名邮箱的配置,以及如何开启 Catch-all 功能。

准备工作

首先注册 Microsoft 365 开发人员计划,注意这个计划是 90 天一个周期续订的,可以通过调用 API 和绑定 GitHub 账号等方法进行续期,具体操作可以自定搜索。当然也可以购买 Microsoft 365 商业版订阅,最低只需 43 CNY 每月哦。

添加域名

前往 Mircosoft 365 admin center,在左侧 设置-域 中选择 添加域,按照流程添加即可。通常需要添加 TXT, MX, CNAME 等记录。

添加账号

Microsoft 365 E5 允许 25 个账号,可以在 用户-活跃用户 中添加,如果前面已经成功添加了域名,可以在添加用户时选择其邮箱地址域名为自己的域名。

开启 DKIM

域密钥识别邮件 (DKIM) 是一种身份验证过程,可以帮助保护发件人和收件人免受伪造和网络钓鱼电子邮件的侵害。 将 DKIM 签名添加到您的域,以便收件人知道电子邮件实际上来自您组织中的用户,并且在发送后没有被修改。

Microsoft 365 支持 DKIM 功能,但需要手动配置。前往 Microsoft 365 Defender 按照说明开启即可,需要额外增加两个 CNAME 记录。详细步骤可以看参考链接中的文档。

开启 Catch-all

顾名思义,Catch-all 即收取所有发往该域名的邮件,无论是否在账号中配置了该用户名。Microsoft 365 没有原生提供这一选项,需要绕一点路来实现这个功能。

思路是创建一个邮件规则,把发往该域名的所有邮件重定向到某个邮箱,然后排除掉已经分配的用户邮箱,实现 Catch-all 功能。

修改域类型

前往 Exchange 管理中心 邮件流-接受的域,将自己的域名修改为 内部中继

创建动态通讯组

为了避免把已分配用户的邮件重定向到其他邮箱,这里先创建一个包含所有用户的动态组。

前往 收件人-组,添加组,组类型选择 动态分布,分配用户时选择 仅以下收件人类型-具有 Exchange 邮箱的账户,分配一个邮件地址即可,例如 exchange@example.com

创建规则

前往 邮件流-规则,创建新规则。

  • 在以下情况应用此规则:发件人位于 组织外部
  • 执行以下操作:将邮件重定向到 <你想要的邮箱>
  • 除非:收件人为以下组的成员 exchange@example.com

点击下面的更多选项可以增加 除非,选择前面创建的动态组,避免把已有用户的邮件重定向到其他邮箱。

这样就配置好了,可以给任意不存在的用户名发一封邮件来测试 Catch-all 功能。如果有不清楚的地方,可以看下方给出的参考链接。

参考