Cloudflare Email Routing で独自ドメインメールを無料運用する

独自ドメイン ota2000.com のメールアドレスを、追加コストなしで Gmail から送受信できるようにした。

受信: Cloudflare Email Routing

Cloudflare Email Routing は無料のメール転送サービス。

ota2000@ota2000.com → yas.arakaki+ota2000@gmail.com

設定は MX レコードを Cloudflare のサーバーに向けるだけ。Terraform で書くとこうなる。

resource "cloudflare_email_routing_rule" "ota2000" {
  zone_id = var.zone_id
  name    = "ota2000@ota2000.com -> Gmail"
  enabled = true

  matchers = [{ type = "literal", field = "to", value = "ota2000@ota2000.com" }]
  actions  = [{ type = "forward", value = ["yas.arakaki+ota2000@gmail.com"] }]
}

送信: Resend + Gmail

受信は Cloudflare で転送できるが、送信には別の SMTP サーバーが要る。自分は Resend を使っている。

  1. Resend でドメインを追加し、DKIM・SPF レコードを設定
  2. Gmail の「アカウントとインポート」から「他のメールアドレスを追加」
  3. SMTP サーバーに smtp.resend.com を指定

これで Gmail から ota2000@ota2000.com として送信できる。

DNS レコード

メール関連で必要な DNS レコードは意外と多い。

Terraform で管理しておくと、各レコードが何のために存在するかコード上で分かる。

コスト

全部無料。Cloudflare Email Routing は無料、Resend も月 3,000 通まで無料枠がある。個人利用なら十分。

← Blog