1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

独自ドメインのメールを無料で送受信する — Cloudflare Email Routing + Brevo + Gmail

1
Posted at

この記事は riku-kobayashi.jpに掲載した記事の転載です。

はじめに

サービスやサイトを公開すると、問い合わせ窓口として contact@自分のドメイン のようなメールアドレスが欲しくなります。ただ、Google Workspace のような有料のメールホスティングを契約すると、そのためだけに毎月お金がかかってしまいます。

この記事では、無料サービスの組み合わせだけで独自ドメインメールの送受信を実現し、操作はすべて既存の Gmail で完結させる構成を紹介します。

使うのは以下の3つです。

サービス 役割 費用
Cloudflare Email Routing 受信(転送) 無料
Brevo 送信(SMTPリレー) 無料
Gmail 送受信の操作画面 無料

全体像

まず押さえておきたいのは、メールの「受信」と「送信」はまったく別の仕組みで動いているという点です。だからこそ、それぞれに別の無料サービスを割り当てる構成が成り立ちます。

  • 受信: 独自ドメイン宛のメールを Cloudflare が受け取り、既存の Gmail アドレスへ転送します
  • 送信: Gmail の「別名で送信」機能から Brevo の SMTP サーバーを経由して、独自ドメインの差出人名義で送信します

以下、それぞれの仕組みを見ていきます。

受信の仕組み — MXレコードと転送

あるドメイン宛のメールをどのサーバーが受け取るかは、DNS の MXレコード(Mail eXchange)で決まります。送信側のメールサーバーは、宛先ドメインの MX レコードを DNS に問い合わせ、そこに書かれたサーバーへメールを配送します。

Cloudflare Email Routing を有効化すると、Cloudflare のメールサーバーを指す MX レコードが自動で追加されます。

Type: MX  Name: @  Value: route1.mx.cloudflare.net  Priority: 10
Type: MX  Name: @  Value: route2.mx.cloudflare.net  Priority: 24
Type: MX  Name: @  Value: route3.mx.cloudflare.net  Priority: 40

あわせて、転送時の到達性を担保するための SPF レコード(v=spf1 include:_spf.mx.cloudflare.net ~all)も追加されます。

Cloudflare Email Routing はメールボックスではなく転送サービスです。メールを保管する場所はなく、届いたメールを指定したアドレス(今回は Gmail)へ横流しするだけです。転送先を用意せずに単体で使うことはできません。

メールボックスを持たない代わりに、容量制限も管理コストもありません。受け口は Cloudflare、保管と閲覧は Gmailという分担です。

送信の仕組み — Send As と SMTPリレー

Gmail には「他のメールアドレスでメールを送信」(Send As)という機能があり、外部の SMTP サーバーを指定して別アドレス名義で送信できます。

ここでSMTP サーバーに何を指定するかが問題になります。素朴に考えると Gmail 自身の SMTP サーバーを使えばよさそうですが、それでは送信ドメイン認証(DKIM)が通りません。受信側のサーバーはこのメールは本当に example.jp から送られたものかを DKIM 署名で検証しますが、Gmail の SMTP は自分のドメインの署名鍵を持っていないためです。認証に失敗したメールは迷惑メール扱いされるか、受信拒否されます。

そこで、自分のドメインを認証済みの SMTP リレーサーバーを経由させます。今回は Brevo を使います。Brevo にドメインを登録して DKIM を設定しておけば、Brevo 経由で送るメールには正しい署名が付き、受信側の検証をパスできます。

Brevo のドメイン認証(DKIM・DMARC の DNS 設定)については、別記事にまとめています。未設定の場合は先にそちらを済ませてください。

設定手順

仕組みが分かれば、設定は3ステップです。

Step 1: Cloudflare Email Routing で転送を設定

  1. Cloudflare ダッシュボード → 対象ドメイン → EmailEmail Routing
  2. 「Enable Email Routing」で有効化(MX・SPF レコードが自動追加されます)
  3. Routing RulesCreate address で転送ルールを作成
    • Custom address: contact
    • Action: Send to an email → 自分の Gmail アドレス
  4. 転送先の Gmail に届く確認メールを承認

これで受信側は完了です。contact@example.jp 宛のメールが Gmail に届くようになります。

Step 2: Brevo で Sender 追加と SMTP キー発行

  1. Brevo → Senders, Domains & Dedicated IPsSendersAdd a sendercontact@example.jp を追加
  2. SMTP & APISMTP タブ → 「Generate a new SMTP key」でキーを発行してコピー

Sender の追加時に確認メールが届きますが、Step 1 の転送設定が済んでいれば Gmail で受け取れます。受信設定を先に済ませるのはこのためです。

Step 3: Gmail の「別名で送信」を設定

  1. Gmail(PC)→ 歯車 → すべての設定を表示アカウントとインポート
  2. 「他のメールアドレスでメールを送信」→ メールアドレスを追加
  3. 名前と contact@example.jp を入力(「エイリアスとして扱います」はチェックのまま)
  4. SMTP サーバー情報を入力
SMTPサーバー: smtp-relay.brevo.com
ポート:       587(TLS)
ユーザー名:   Brevoのログインメールアドレス
パスワード:   Step 2で発行したSMTPキー
  1. 確認メールのリンクを承認(これも Step 1 の転送経由で Gmail に届きます)

設定後は、Gmail の作成画面で「From」欄をクリックすると差出人を切り替えられます。

まとめ

  • メールの受信と送信は別の仕組みなので、受信は Cloudflare Email Routing、送信は Brevo SMTP と分担させれば無料で構成できます
  • 受信の実体は MX レコードによる転送で、Cloudflare Email Routing にメールボックスはありません
  • 独自ドメイン名義の送信には、そのドメインの DKIM 署名を付けられる SMTP リレーが必要です。Gmail の SMTP では認証が通りません
  • 設定は受信 → Brevo → Gmailの順に進めると、各ステップの確認メールを Gmail で受け取れてスムーズです

制約として、Brevo 無料プランの送信上限は1日300通です。問い合わせ窓口の用途であれば十分すぎる枠ですが、大量送信の用途には向きません。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?