コンテンツにスキップ
プライベートなGmailで独自ドメインでDMARC対応した話

プライベートなGmailで独自ドメインでDMARC対応した話

こんにちは。
ECシステム開発チームのいまづです。
みなさんBlueskyしてますか?

といっても、今回はBlueskyの話題ではないのですが、Blueskyではハンドルにドメインを使えますね。
https://bsky.social/about/blog/4-28-2023-domain-handle-tutorial
X(旧Twitter)での @ssci がBlueskyではデフォルトだと @ssci.bsky.social
ようなサブドメイン形式のハンドルになるのですが、これを @switch-science.com にできるというものです。
設定したいドメインにTXTレコードを作成することで設定できますね。
ちなみに、スイッチサイエンスはBlueskyでも @switch-scienceで新商品情報などを発信しています。こちらもよろしくお願いします。

Nostrでもなりすまし防止などのたてにドメイン認証が使えます。いわゆる認証バッジのような形で表示するようにできます。
https://github.com/nostr-protocol/nips/blob/master/05.md

個人でも本人証明の手段などのために、ドメインを使う機会がだんだん増えたのではないでしょうか。前から持ってるよ、という方も多いでしょうけれど。

僕は個人的に持っているドメインは基本的にCloudflareで管理しているのですが、”Email Routing”をメニューに見かけて「ああ、そういえば自ドメインでメール受信できるんだっけ」と思って試してみたくなりました。
https://developers.cloudflare.com/email-routing/

"Email Routing" でできるのは、設定した自ドメインのメールアドレスで受信して転送する(Workersとかでゴニョゴニョする)だけで、メールの送信はできません。
自ドメインのメールアドレスで受信できると送信もしたいです。

送信するならせっかくなのでDMARC対応もしておきたいです。
"Email Routing"の設定だけではDMARC関連のDNSレコードは作成されないので、"DMARC Managemenを有効" にしておきます。

デフォルトではDMARCポリシーは "none" になっています。

Gmailから自ドメインのメールアドレスで送信してみると

ということでGmailの「他のメールアドレスを追加」で追加してみました。
SMTPサーバーにはGmailのサーバーを指定して、パスワードにはアプリパスワードを作成して設定しました。

試しに送信してみると、問題なくfromは自ドメインのアドレスになっています。
ところが、

Gmailで他のドメインのメールアドレスを送信元に追加すると、DKIMとかつけてくれないんですね。知らなかったですよ。ご存知でした?
DMARCもfailしていますね。そらそうですね。DKIMついてないんだから。

Return-Path はGmailのアドレスになっているので、署名ついていてもよさそうな気はしますが、もしついていたとしても MAIL FROM と from アドレスのドメイン不一致でエラーにはなりそう。

結局自ドメインのSMTPサーバーが必要そうですが

わざわざメールサーバーを運用なんてしたくありません。

さて、どうしようかと考えたときに、さくらインターネットの「さくらのメールボックス」を契約していることを思い出しました。

調べてみると、他社で取得・管理中のドメインを設定したい に知りたいことが書いてあります。
12ヶ月一括払いだと1,048円です。おサイフにやさしめ。

SMTPにさくらのサーバーを使う場合、DKIMの署名鍵もさくらのサービス上で作成できるようです。

さくらのメールボックスにドメインを追加してみる

「メールドメイン設定」でSPFやDKIMの利用オン・オフが設定できますが、DKIMの設定が先に必要です。

「DMARCレコード」を「利用する」設定にして、デフォルトで設定します。
秘密鍵のアップロードをするかどうかも、ここで指定できますね。

設定が終わったら、「DNSレコード」を確認すると、必要な設定が表示されます。
DNSサーバーとしてはCloudflareを使うので、これらをのうち_domainkeyレコードやSPFのテキストレコードを転記します。

Gmailの送信元アドレスに設定したSMTPサーバーをさくらのメールサーバーに変更する

さくらのメールサービス側で、CloudflareのEmail Routingで設定したメールアドレスを作成します。このアカウント設定を使って、GmailのSMTPサーバーを設定し直します。

送信してみます。


PASSしました!
Return-Path も作成したメールアドレスに変わりました。
個人的に大量メールを送信したりする予定はまったくありませんが、迷惑メール扱いされてしまう可能性はちょっとは減るのでしょうか。

今回たまたま僕が使っているメールサービスがさくらさんのものだったので、さくらのメールボックスの紹介みたいになってしまいましたが、基本的には使っているDNSサーバーとは別のSMTPサービスを使う場合、やることは同じような内容になるのでしょうね。

SMTPサーバーとDNSサーバーを別のサービスで使ってみると、それぞれで何をしないとならないのかがわかりやすい気がします。

お仕事のDMARC対応と違って、これ以上触ることはなさそうです。 ;D

前の記事 Picossci DC/サーボモータードライバ(RP2040搭載)をつかってみる