Cloudflareでドメインを取得・DNS管理している状態で、Cloudflare Email RoutingとGmailを使って独自ドメインのメールを送受信する設定メモ。
前提:メール認証(SPF / DKIM / DMARC)について
2024年のGmail・Yahoo等の送信者ガイドライン強化に伴い、独自ドメインのメール運用では各種メール認証の設定が重要になっています。
- SPF: 送信元メールサーバーのIPアドレスが正当かをDNSで宣言
- DKIM: 送信メールに電子署名を付与し、改ざんを検知
- DMARC: SPF/DKIMの認証結果(ドメインの一致)に基づき、なりすましメールの処理方針を宣言
受信転送やDMARCの設定はCloudflare側でほぼ自動化されていますが、GmailのSMTPサーバーから送信する設定は手動で補う必要があります。
1. メール受信設定(Cloudflare Email Routing)
Cloudflareダッシュボード > メールアドレス > Email Routing
- 宛先メールアドレスに転送先のGmailアドレスを登録
- カスタムアドレスに設定したいアドレス(例:
info@example.com)を設定 - 画面に表示されるDNSレコード(MXレコード等)を登録
(任意)Catch-all(キャッチオール)設定
特定のアドレスだけでなく、*@example.com で任意の文字列を受信したい場合は Catch-all address を有効にします。
都度ルールを追加しなくてもサービス登録用のアドレス等を自由に使い分けられます。
2. メール送信設定(Gmailでのアドレス追加)
- Googleアカウントで アプリパスワード を発行
- Gmailの「設定(歯車)」>「すべての設定を表示」>「アカウントとインポート」
- 「他のメールアドレスを追加」からカスタムアドレスを登録
| 項目 | 設定値 |
|---|---|
| SMTPサーバー | smtp.gmail.com |
| ポート | 587 |
| ユーザー名 | Gmailアドレス(xxx@gmail.com) |
| パスワード | 発行したアプリパスワード |
| 接続方法 | TLS |
登録後、Gmail宛てに届く確認メールのリンクをクリックして完了。
3. DNSレコード設定(SPF・DMARC・DKIM)
SPFレコードの修正
Cloudflareが自動生成するSPFレコードは受信転送用のみのため、Gmailの送信サーバー(_spf.google.com)を手動で追記します。
- 変更前:
1
v=spf1 include:_spf.mx.cloudflare.net ~all
- 変更後:
1
v=spf1 include:_spf.mx.cloudflare.net include:_spf.google.com ~all
DMARCレコード(自動生成)
Cloudflareの「Email Routing」や「DMARC Management」を有効にすると、_dmarc のTXTレコードが自動的に生成・登録されます。基本的には推奨値のままでOKです。
DKIMレコードと無料Gmail送信時の注意点
CloudflareのDNSを確認すると、cf2024-1._domainkey というTXTレコードが自動登録されています。これはCloudflareがGmailへ転送する際に迷惑メール扱いされないよう付与する転送用の署名鍵です。
一方、無料GmailのSMTPから送信する場合、いくつか仕様上の制限があります。
- DMARCがFailになる:
無料GmailのSMTP経由で送信すると、実際の送信元(Return-Path)やDKIM署名が@gmail.comになります。ヘッダーのFrom(独自ドメイン)とドメインが一致しない(アライメント不一致)ため、DMARC検証はFailになります。
DMARCポリシーをp=quarantineやp=rejectにしていると相手先で迷惑メール扱いされたり拒否されたりするリスクがあるため、ポリシーはp=none(監視)にしておく必要があります。 - 「〜経由」の表示:
受信側のメーラー(OutlookやWeb版Gmail等)によっては、「xxx@gmail.com 経由」という表記が送信者名に付きます。
本格的に運用し、完全なDMARC合格(Pass)や「経由」表示の解消を目指す場合は、GmailのSMTPではなく無料枠のある外部SMTPサービス(ResendやBrevoなど)で独自ドメインのDKIMを設定し、そのSMTP情報をGmailに登録する構成が無難です。
4. Gmailの返信動作設定
デフォルトのままだと独自ドメイン宛てのメールに返信した際に送信元が個人の @gmail.com に戻ってしまうため、設定を変更しておきます。
- Gmailの「すべての設定を表示」>「アカウントとインポート」
- 他のメールアドレスから送信: セクション
- 「メッセージを受信したのと同じアドレスから返信する」 にチェックを入れる