在《写给小白的建站指南》中,介绍了怎么注册自己的域名。有了自己的域名之后,可以做的事情很多,其中一件就是使用自己的域名收发邮件。想想看,当对方收到来自 [email protected] 的邮件,是不是显得更专业更高大上?
基本思路
要实现使用自己的域名收发邮件,其中一种方法是在自己的 VPS 上搭建邮件服务器,但实现起来非常复杂且耗时,除了安装配置各种组件之外,还要考虑如何预防垃圾邮件和病毒等等琐碎的维护工作,其弊端可参考 DigitalOcean 的《Why You May Not Want To Run Your Own Mail Server》。
另一种更加方便的实现方法,是使用第三方的邮件服务。例如 Linda 公司使用的就是腾讯的企业邮箱,其收费不菲。Google 将 Google Apps 包装成 G Suite 后也开始收费了,每个月每个用户 $5-$10 的费用对于个人用户来说也是一笔不小的开支。那么有没有免费的第三方邮件服务呢?下面介绍两个我试用过的可使用自有域名的免费邮件服务。
Mailgun
在《Hacking Gmail to use custom domains for free》一文中,作者使用了 Mailgun 作为 Gmail 的中转服务。Mailgun 号称是专为开发者设计的电子邮件服务,其特色是开放了非常方便的 API 供开发者定制自动化的邮件功能。但我试用了下,在将要添加自己的域名时,提示我的帐户被临时禁用,联系他们的客服才知道,为了安全起见,必须进行商业认证,需要给客服提供如下信息:
- 所发邮件是事务性质还是市场性质?需简述你的业务是如何使用电子邮件的。
- 电子邮件地址的数据库来自哪里?需要提供可访问的链接。
- 是否所有的电子邮件地址都是二次选择生成的?也就是说,是否是用户先通过注册一个你的电子邮箱地址,再点击邮件中的链接再次确认的机制?
- 每个月预期的邮件使用量是多少?
- 是否已阅读他们的电子邮件最佳实践文档?
在 Mailgun 发给我的邮件中,还让我提供用户注册邮箱的 URL 链接,以及我发给用户的邮件的样本。
我只是想要使用自己的域名收发邮件而已,目前来看可能只会有我和 Linda 两个邮箱帐户,并没有想要开放给网站的访问者注册邮箱,更不想提供专门的电子邮件服务。我也就止步于此,放弃了 Mailgun。
Zoho
进一步搜索之下,我找到了 Zoho,并最终达成了自有域名的邮件收发。主要参考的是 DigitalOcean 的《How To Set Up Zoho Mail with a Custom Domain Managed by DigitalOcean DNS》,在实际操作过程中与 DigitalOcean 的文章有些出入,现记录下自己的操作过程。
注册并绑定手机号
在使用 Zoho 的服务之前,需要先在此处注册,可使用其它的电子邮箱注册,也可使用 Google、Facebook、LinkedIn、Twitter 等账号通过 OAuth 注册。若使用电子邮箱注册,记得在注册完成后的 30 天内,点击注册时使用的邮箱中的激活链接进行激活。
注册后,会中转到 Zoho 的主页面,这里列出了 Zoho 提供的各种不同的服务,点击其中的 Mail 链接,如下图所示:

Zoho Mail Link
此时需要先绑定你的手机号码,输入手机号和注册 Zoho 时的密码,并在下一步输入验证码之后,就绑定成功了。

Zoho Link Mobile Phone Number
选择套餐
接下来,有以下两个选项:
- Add your existing domain for Email Hosting with Zoho and create domain-based address.
- Create email account as @zoho.com
我们当然是选择第一个,添加自有域名的邮箱。此选项包含了四种不同的套餐:

Zoho Mail Plans
从上图的底部可知,不管是收费套餐还是免费套餐,都包含了邮件推送和手机同步、IMAP/POP 访问等功能,而收费套餐可支持多域名的绑定、额外的邮箱容量、Google 日历同步等更全面的服务。对于免费套餐(LITE)来说,最多支持 25 个电子邮箱地址,每个邮箱有 5GB 邮件容量和 1GB 文档容量,而且还无广告,实在是业界良心。
在选择了 LITE 套餐之后,就需要输入我们自己的域名了,比如输入我的 lancitou.net:

Zoho Enable Mailhosting
添加成功之后,点击页面底部 Setup “lancitou.net” in Zoho 的链接,准备验证你对上一步填入的域名的所有权。
验证域名
接下来出现的 Create Origanization 页面,填入自己的网站名称之后,总是出现「Oops! Something went wrong. Try again later」的错误提示。

Zoho Create Origanization
此时挂上 VPN,再刷新页面,「奇迹」出现了。不再需要输入组织名称,而是进入了 Zoho Mail 的后台。点击左侧的 Domains 再点击右侧对应域名 Verified 下面的黄色叹号图标。

Zoho Mail CPanel
进入 Domain Setup 页面后,在 Verify Domain 这一步,根据自己域名的服务商做相应的选择,例如我的域名服务商是 Name.com,选择之后会出现对应域名服务商的域名验证方法。

Zoho Verify Domain
Zoho 提供了三种验证域名的方法,分别是 CNAME 法、TXT 法、HTML 法。我们使用 CNAME 的方法验证,在 Verify Domain 页面的底部也会给出对应域名 CNAME 验证方法。就是进入 Name.com后台的 DNS Record 页面,添加一条 Type 为 CNAME 的记录,Host 和 Answer 分别为 Zoho Verify Domain 页面上给出的两个值,例如我的用于验证的 CNAME 记录:

Name.com CNAME Record
CNAME 记录添加成功之后,回到 Zoho Verify Domain 页面,点击底部绿色的 Process to CNAME Verification 按钮,稍等片刻,域名验证就可以开始了。

CNAME Verification succeed
继续点击 Verify Now,等验证域名完成后,Name.com 后台的那条 CNAME 记录就可以删除了。
添加用户
在 Zoho Domain Setup 页面,到了第二步 Add Users,点击 Process to Add Users,就可以添加自有域名对应的电子邮箱账号了。比如添加一个 [email protected]:

Zoho Mail Add Users
添加 MX 记录
用户添加成功之后,回到 Domain Setup 页面,点击右下角的 Skip 跳到 Configure Email Delivery 步骤,页面上给出了需要添加的 MX 记录的信息:

Zoho MX Records
同样的,在 Name.com 后台 DNS Records 页面,相应地添加两条 Type 为 MX 的记录,Host 留空,Answer 分别为 mx.zoho.com 和 mx2.zoho.com,TTL 保持默认值 300,Priority 分别为 10 和 20。同时还需要注意删除其它不相关的 MX 记录。

Name.com MX Records
MX 记录添加完成后,回到 Zoho Domain Setup 页面点击底部绿色的 MX Lookup 按钮可查询 MX 记录是否设置成功,或使用 mxtoolbox.com 查询。MX 记录生效后,在 Zoho Domain Setup 页面的 Configure Email Delivery 步骤显示如下:

Zoho MX succeed
设置邮箱客户端
上面的步骤完成之后,已经可以进入 mail.zoho.com 使用自有域名收发邮件了,但是这个页面响应速度很慢,且通常都会使用邮箱客户端或 Gmail 等将多个电子邮箱集成到一起便于管理。下面以 Gmail 为例说明如何设置。
在 Zoho Domain Setup 页面的 Mail Client Configuration 步骤中,列出了用于收取 Zoho 邮件的 IMAP/POP 设置和发送 Zoho 邮件的 SMTP 设置:

Zoho IMAP/POP/SMTP Configuration
进入 Gmail 的 Settings 页面,点击 Accounts and Import 标签,再点击 Send mail as 栏中的 Add another email address,在弹出的页面中填入 Zoho 中添加的自有域名的邮箱帐户:

Gmail Add User
点击 Next Step 之后,填入 Zoho SMTP 服务器参数和自有域名的邮箱地址和密码,需要注意的是,如果是自有域名邮箱管理员帐户,使用的密码是 Zoho.com 本身的密码,如 [email protected] 的密码就是注册 Zoho.com 时的密码;而其它普通邮箱用户的密码则是添加相应用户时输入的密码,如 [email protected] 的密码是在「添加用户」一节中设置的密码。

Gmail SMTP Setting
点击 Add Account 之后,可以点击 mail.zoho.com 中的确认链接,也可输入绑定的手机接收到的短信验证码,完成 SMTP 的设置。
IMAP/POP 的设置类似,是在 Gmail Setting 页面的 Accounts and Import 标签中 Check mail from other accounts 栏,点击 Add a mail account,同样在弹出的窗口中输入 [email protected] 并点击 Next Step,再输入 Zoho POP 服务器的设置。同样需要注意管理员的密码是 Zoho.com 的密码。

Gmail POP Setting
其它邮箱客户端如 Hotmail 等的 IMAP/POP 和 SMTP 设置类似。
以上。