独立开发省钱指南 - 0 元搭建域名邮箱

大家好,我是 jonssonyan。

之前我分享了独立开发省钱指南 - Cloudflare,里面提到了 Email Routing 用来接收邮件,这次我们继续薅 Cloudflare,本文教大家如何使用 Cloudflare Email Routing + Resend 0 元搭建域名邮箱。

做产品以后,我们一般都需要几个域名邮箱:

直接在 Google Workspace、Microsoft 365 或企业邮箱购买,每个账号每个月都要付费。一个产品看起来不多,产品多了支出就多了。

如果只是自己使用,不需要多人协作和独立邮箱后台,可以使用下面这套方案:

Cloudflare Email Routing 收邮件,Resend 发邮件,最后统一在 Gmail 管理。

除了域名本身,整套方案可以做到 0 元。

实现原理

收邮件:

用户 → [email protected] → Cloudflare → Gmail

发邮件:

Gmail → Resend SMTP → 用户

Cloudflare 负责把发到域名邮箱的邮件转发到个人 Gmail,Resend 提供 SMTP 发信服务,Gmail 负责查看、回复和管理邮件。

配置完成以后,用户看到的发件人和收件人都是 [email protected]

Cloudflare Email Routing 收邮件

Cloudflare Email Routing:https://developers.cloudflare.com/email-service/get-started/route-emails/

Cloudflare Email Routing 可以免费接收域名邮件,并转发到已经验证的邮箱。

例如:

Cloudflare 当前免费版的入站邮件没有数量限制,每个域名最多可以创建 200 条路由规则,单封邮件最大 25 MiB。

Cloudflare Email 限制:https://developers.cloudflare.com/email-service/platform/limits/

配置也很简单:

  1. 把域名接入 Cloudflare DNS;
  2. 打开 Email Service
  3. 进入 Email Routing
  4. 添加并验证接收邮件的 Gmail;
  5. 创建域名邮箱和转发规则;
  6. 按照提示添加 MX、SPF 和 DKIM 记录。

Cloudflare 会自动处理大部分 DNS 配置,通常几分钟后就能收到邮件。

还可以开启 Catch-all,把所有没有单独配置的地址都转发到 Gmail。例如别人向 [email protected] 发邮件,也能收到。

不过我不建议默认开启 Catch-all。地址越多,垃圾邮件越多。正常创建 hellosupportbilling 等常用地址就够了。

Email Routing 不是真正的邮箱

这里需要注意:Cloudflare Email Routing 只是邮件转发服务。

它没有:

  • 独立收件箱
  • 邮箱账号和密码
  • IMAP、POP3
  • 已发送邮件
  • 通讯录和日历
  • 免费向任意地址发送邮件的 SMTP

因此,只配置 Cloudflare Email Routing,可以收到 [email protected] 的邮件,但是直接在 Gmail 回复时,默认发件人仍然可能是个人 Gmail。

想用域名地址回复,还需要一个发信服务。

Cloudflare 现在也提供 Email Sending,但是向任意收件人发信需要 Workers Paid,免费版只能向账户中已经验证的地址发送。

Cloudflare Email Sendign 价格:https://developers.cloudflare.com/email-service/platform/pricing/

如果不想订阅 Workers Paid,可以使用 Resend。

使用 Resend 发邮件

Resend:https://resend.com/

Resend 是一个面向开发者的邮件发送服务,可以通过 API 或 SMTP 发送邮件。

免费版目前包含:

  • 每月 3000 封邮件;
  • 每天最多 100 封;
  • 1 个自定义域名;
  • SMTP Relay;
  • SPF、DKIM 域名认证;
  • 30 天日志。

对于独立开发者回复用户邮件,以及发送验证码、登录链接和订单通知,基本够用。

Resend 免费额度: https://resend.com/docs/knowledge-base/what-is-resend-pricing

配置流程如下:

  1. 注册 Resend;
  2. 添加自己的域名;
  3. 在 Cloudflare DNS 中添加 Resend 提供的 SPF、DKIM 和 MX 记录;
  4. 等待域名验证通过;
  5. 创建 API Key。

Resend 默认使用 send.example.com 作为 Return-Path,所以它添加的是 send 子域名的 MX 和 SPF,不会覆盖 Cloudflare Email Routing 在主域名上的 MX 记录。

不要删除 Cloudflare 自动创建的 MX 记录,否则域名邮件会无法转发到 Gmail。

Resend 官方更建议使用独立子域名发送邮件,例如 updates.example.com ,这样可以隔离发信信誉。但如果希望用户直接看到 [email protected],也可以验证主域名,然后按照 Resend 提供的 DNS 记录配置。

在 Gmail 中添加域名邮箱

Resend 验证成功以后,打开 Gmail:

  1. 进入“设置”;
  2. 选择“账号和导入”;
  3. 找到“用这个地址发邮件”;
  4. 点击“添加其他电子邮件地址”;
  5. 输入名称和 [email protected]
  6. 填写 Resend SMTP 信息。

SMTP 配置如下:

1
2
3
4
5
SMTP 服务器:smtp.resend.com
端口:587
用户名:resend
密码:Resend API Key
加密方式:TLS

也可以使用 465 端口和 SSL。Resend 还支持其他端口,但 Gmail 使用 587 或 465 即可。

Resend SMTP 文档: https://resend.com/docs/send-with-smtp

保存后,Gmail 会向 [email protected] 发送一封验证邮件。邮件经过 Cloudflare 转发回 Gmail,点击验证链接或者填写验证码即可。

以后写邮件时,可以在发件人位置选择:

[email protected]

邮件会由 Gmail 提交给 Resend,再由 Resend 使用你的域名发送。

Google 的 Gmail API 也明确支持为自定义发件地址配置外部 SMTP,包括服务器、端口、用户名、密码和加密方式。

Gmail SendAs 文档: https://developers.google.com/workspace/gmail/api/reference/rest/v1/users.settings.sendAs

让回复默认使用域名邮箱

完成上面的配置后,还需要修改 Gmail 的一个设置。

在“账号和导入”中找到“用这个地址发邮件”,选择:

回复邮件时,使用收到邮件的地址回复。

这样用户发送邮件到 [email protected],你点击回复时,Gmail 会自动使用 [email protected],而不是个人 Gmail。

所有产品邮件都在一个 Gmail 中处理,不用频繁登录多个邮箱后台。

总结

对于一个人做产品的独立开发者,这套方案已经够用:

  • Cloudflare Email Routing 免费收邮件;
  • Resend 免费发邮件;
  • Gmail 统一管理;
  • 产品继续使用自己的域名地址。

一个人、邮件少、产品多,可以用这套方案,以后挣钱了有团队了,再付费使用专业的企业邮箱服务也不迟。

公众号