域名邮箱全解

域名邮箱全解,以及免费邮箱的比较 - Kaciras Blog

域名邮箱,顾名思义就是用自己的域名作为邮箱地址,比如contact@kaciras.com,而不是用邮件服务商的地址(xxx@gmailxxx@qq.com等等)。

最近我把自己的邮箱从outlook.com换成了域名邮箱,也是花了几天来了解这个东西,最后感觉相当不错,如果你有域名,我建议也整一个。

为什么需要域名邮箱 #

大家都知道用自己的域名做邮箱地址,首先逼格就高了一截;如果是企业那更是必须得有,想一下你公司的联系方式是xxxxxxxx@qq.com,别人看到会怎么想……

另外现在上网的每人都有邮箱地址,还有一堆诈骗犯在不停申请,导致几个大厂的用户名都被抢完了,比如 Gmail,你拿人名或者常见单词去注册根本就不行,全被用了,最终只能在名字里加些奇怪的数字或符号——搞得像个山寨号。而使用域名邮箱则没有此问题,@前面想写啥就写啥,后头的只要不选.com,名字都是很充裕的。

以上两条也许还能忍,但域名邮箱还有个最重要的作用,就是方便迁移。

当你换了邮件服务商当你换了邮件服务商

想一下你注册过多少账户,几乎所有网站都会要求设置一个邮件地址(不过国内的要手机号),当你想换一家邮箱时,如果用得是它家的域名,那就得把这些网站上的信息全部修改一遍。而如果用自己的域名,那它就是一个间接层,你只需要把域名的指向换成新的服务商即可。

这又引出一个问题:为什么要换邮箱?如果运气好的话一家用到老也行得通,但现实中总有各种意外,比如你才发现 Outlook 把最重要的邮件给放到垃圾箱里、服务商倒闭或者砍了邮箱产品、服务商开始了收割,疯狂阉割原先的功能……所以确保能够随时迁移总没坏处。

那么增加一个域名层有没有代价呢?其实是有的,以下几条你需要考虑:

  1. 需要买一个域名,并注意续费。
  2. 限制了邮件服务商的选择,很多厂家都把域名邮箱作为收费服务,你可能得交钱,或者选一个良心的。
  3. 某些网站只认那几个主流的邮箱,自己的域名无法注册。
  4. 该域名上若有其它服务,特别是网站之类的可能因内容而被墙,导致无法收到某些地区的邮件。虽然大厂有国外的发信服务器能过墙,但那些自建的就不好说了。

域名与服务的绑定 #

要想玩转域名邮箱,最好先了解一下基本的知识,特别是域名跟邮件服务器是如何对应的?

(本文假设你已经了解 DNS)

接收流程 #

对于接收来说,这跟普通的域名解析一样,通过设置 MX 记录来告诉对方以该域名结尾的邮件应该发送到某个域名,后续再查询目标域名的 IP 地址确定网络位置,以本站为例:

DNS MX 记录DNS MX 记录

服务器的地址服务器的地址

发邮件到contact@kaciras.com 解析到 mx1.larksuite.com,再查询出 IP101.126.58.230即为服务器地址。另外 MX 记录可以有多个,可用于备份和负载均衡。

为什么不直接用 A 记录?

MX 指向 A,A 指向 IP,这样的设计实际上也是一个间接层,对域名邮箱来说,MX 是用户设置的,而 A 记录由服务商管理,这样当服务商想换服务器 IP 的时候只用改它的 A 记录就好,用户无感知。

另外当同一个域名既有 HTTP 服务又有邮件服务时,可以设置 MX 到另一个域名以实现在不同的服务器上部署不同的服务。

域名验证 #

发送一封电子邮件,你只需要写好发送方、接收方,然后就能把内容送到对方的邮箱里,这就又有个问题:发送方可以随便填,如何防止伪造?

比如你的服务器收到一封声称发件人是elon-musk@x.com的邮件,来自于 IP 123.45.67.89,你能仅靠这两个信息确定它来自那位炒作大师吗?显然不能,因为邮件服务器之间使用 TCP 通信,能确定的信息只有对方的 IP,以及邮件的内容,其中发件人还是对方填的。

(正规的服务商不会允许随意填写发件人,填了也会给你改回去,但恶意人员完全能够构造假的信息)

为应对此情况,一些方案就出现了,最常见的就是 SPF (Sender Policy Framework),通过设置一条 TXT 记录,里面包含v=spf ...来告诉收件人如何验证发件人的域名。SPF 的语法挺多本文不详细展开了,下面是本站的配置:

DNS SPFDNS SPF

include:spf.onlarksuite.com 表明继续从指定的域名查询,然后spf.onlarksuite.com又会返回:

v=spf1 include:spf1.onlarksuite.com include:spf2.onlarksuite.com ~all

再查spf1.onlarksuite.com的 TXT 记录返回:

v=spf1 ip4:130.44.215.10/31 ip4:… ~all

其中ip4:xxx即有效的地址,从这些地址发来的邮件可以认为是kaciras.com发送的。

除了 SPF 之外,还有 DKIM、DMARC 等其它的安全机制,但大多邮箱只需设置 SPF。

为什么用 MX 或 rDNS 来验证?

总结 #

通过设置 MX 和 SPF,即可将自己的域名绑定到邮件服务,非常简单。如果服务商支持域名邮箱,那么它会告诉你需要添加哪些 DNS 记录,跟着填就行。

Lark 的配置要求Lark 的配置要求

转发方案 #

如果服务商不给绑域名,还有一种做法能让邮箱拥有自定义域名,就是转发。

转发同样需要配置 DNS,只不过域名指向的是一个中间服务器,邮件送到上面之后又会被它发送给目标服务器,收邮件的服务不一定支持发,有时还需要单独再配置一次发信端。常见的转发服务商有 CloudflareForwarde MailFirefox RelaySimple Login

转发相比域名邮箱的优势是,它可以实现一些被邮件服务商限制的功能,比如无限数量的用户。

由于转发比域名邮箱要复杂,多了一个中介也意味着更容易故障,如果可能还是优先选择能自定义域名的邮箱,把转发当作一个备用方案。

SMTP、IMAP、POP3 #

在选择邮件服务商时,还需要考虑它是否支持几个重要的协议:SMTP,IMAP 或 POP,这几个协议可用于第三方客户端的连接,以及写程序自动处理邮件。

SMTP 管发,IMAP 和 POP 管收SMTP 管发,IMAP 和 POP 管收

  • SMTP 是发送邮件的协议,基于 TCP,跟 HTTP 是同一个时代的东西,也采用基于文本的消息格式,通过一条条指令来指示服务器发送一封邮件、服务器之间的通信同样使用 SMTP。后来为了安全,SMTP 也可以在 TLS 连接上运行、还有 STARTTLS 扩展协议能让 SMTP 升级到加密的连接。
  • POP 是用于客户端到服务器上下载邮件的协议,目前是第三版也叫 POP3,这个协议比较老,设计上对多终端访问不好,所以一般还是用 IMAP。
  • IMAP 也是客户端跟邮件服务器通信的协议,比 POP 新一些,功能也更先进,是目前的主流。
  • 还有个 Exchange,比 POP 和 IMAP 更新,但它是微软自己搞得东西,很多厂商不支持。

总结:选邮箱时,一定要注意是否支持 SMTP 和 IMAP,如果不支持则无法跟第三方工具集成,以后可能会有麻烦。

邮箱对比 #

自建 #

自己搞一个邮件服务器,不用别人的!我一开始也准备这么做,但最后还是放弃了。自建方案对于个人来说不推荐,它的优点和缺点都有:

:white_check_mark: 扩展性强,想要什么功能都可以加,再也不用看别人的脸色。

:white_check_mark: 隐私性好,不用担心服务商偷看,或者根据某法律明目张胆地看。

:x: 需要有足够的技术,并且得自己处理各种技术问题,费时费力。

:x: 如果邮箱承载了关键业务,就要花钱确保高可用,仅靠一台 VPS 是不行的,本站的服务器就曾因机房起火而挂掉一天。

:x: 你服务器的 IP 可能不干净,这点对于便宜 VPS 尤甚,鬼晓得上一个用这 IP 的人有没有乱搞,导致地址被一些服务商给拉黑了,你邮件过去必进垃圾箱。

Lark #

飞书的国际版 www.larksuite.com,目前非常良心,免费就有 50 用户、域名邮箱、100 G 存储、支持 SMTP 和 IMAP,我正在用。

但是这玩意最大的风险就是它的厂商,国内的厂先良心后黑心的太多了,使用前最好想清楚你信不信字节。

Outlook #

垃圾中的战斗机,我曾不解为什么很少见到有人用 Outlook 邮箱,它国内能直连、支持客户端、还是大厂,按理来说应该跟 Gmail 一样流行才对,后来我才发现他们都是对的。

  • Outlook 拥有微软加持的先进反诈系统,能精准地将重要的邮件归入 Spam 而不给提醒,并且这功能关不掉,你只能把某些域名加入白名单里,但对于没见过的就没辙了。
  • 直接禁了 Cloudflare 的转发服务器,你还玩不了转发,这不是个例而且微软并不想解决。

如果买了 Office 365 的话也能绑定域名,但鉴于 Outlook 的素质我不认为企业版能好到哪去。

Gmail #

国际上最常见的邮箱,无需过多的介绍,现在去注册都抢不到好名字了,这里仅说下缺点。

Gmail 不支持自定义域名,它曾经是支持的,后来给砍了要你买 Google Workspace 企业服务,现在想绑自定义域名的话只能用转发方案。

当然作为非域名邮箱的话 Gmail 很不错,但我没用它因为开 SMTP 要手机号,而且据说用 +86 号码有坑。

Protonmail #

当年声势浩荡地推出的隐私邮箱,主打公司注册在瑞士,以及端侧加密功能,看起来挺强但实际上真的安全吗?。

首先在瑞士仍然要遵守法律交出用户数据,虽然有加密但 IP、收发件人、时间是无法加密的,并且被记录了。

其次 Protonmail 的加密是自己的私有协议,跟非 Protonmail 邮箱交互时无法使用,当然它的公钥是可以导出的,但由于没有像 GPG KeyServer 那样的分发机制,只能把公钥放邮件里一起发送,导致安全问题。

如果需要高度保密,GPG + 自建或临时邮箱是更好地选择。另外 Protonmail 被墙了不说,对接三方客户端还得跑它的 Bridge,既不隐私又不方便。

Zoho #

一个企业服务厂商,有国际版和国内版,提供的邮箱支持绑定域名,做外贸的好多推荐这家。

个人使用的话价格实惠,但免费版禁了 SMTP 和 IMAP,导致无法使用三方客户端,跟 Lark 一比就没什么优势了。

国内邮箱 #

不一一介绍了,一般来说国内用户习惯免费,所以国内邮箱的免费版配置都不错。但我强烈推荐不要使用,因为各种身份验证太烦人,而且指不定哪天又突然出个什么要求。

我就有个 QQ 号因为一年没登录被锁定了,顺带邮箱报废,解锁流程那叫一个搞笑,最后直接放弃。