メールを送信しないドメインにSPF/DKIM/DMARCを設定して迷惑メール被害を避ける

メールを送信しないドメインにSPF/DKIM/DMARCを設定して迷惑メール被害を避ける
GoogleのDNS設定を見てみる

独自ドメインを持っているが、メールには使っていないという状況はよくあるはずです。

しかし、メールに使っていないドメインでも、メールの仕組み上、そのドメインを騙ってメールを送信されるリスクが存在します。

悪意ある第三者がドメインを詐称して迷惑メールやフィッシングメールを送信することで、ドメイン所有者が加害者であるかのように見せかけることが可能です。

結果として、ドメインの評判が傷つき、将来メールを使いたくなったときに正常に送信できなくなったり、最悪の場合ブラックリストに登録されたりする可能性があります。

被害を防ぐには、メールを送信しないドメインでも適切なセキュリティ設定が必要です。

本記事では、メール送信に使わないドメインでも設定しておくべき迷惑メール対策について解説します。

TL;DR

メール送受信に使わないドメインには、以下の3つのDNS TXTレコードを設定しましょう。

レコード名 タイプ
(空) TXT v=spf1 -all
_dmarc TXT v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;
*._domainkey TXT v=DKIM1; p=

また、不要なMXレコードがあれば削除しておくのがベターです。

なりすましメールの仕組み

2種類の「送信者アドレス」

電子メールには、エンベロープFromヘッダーFromという2つの送信者アドレスが存在します。

  • エンベロープFromは、SMTP通信時に「MAIL FROM」コマンドで指定される送信元アドレスです。メールサーバ間の配送時に使われ、エラー通知の返送先となりますが、通常のメールクライアントには表示されません。技術的には「Return-Path」ヘッダとして記録されます。
  • ヘッダーFromは、メールのヘッダ部分に含まれる「From:」フィールドのアドレスです。メールクライアントが「差出人」として表示するのはヘッダーFromであり、受信者が実際に目にする送信者情報です。エンベロープFromとは独立して設定できるため、両者が異なることもあります。

なりすましメールは、エンベロープFromとヘッダーFromの両方を不正に詐称することで成立します。

どうやって防ぐのか?

なりすましメールを防ぐには、「このドメインからメールが送られることはない」とインターネット上で宣言する必要があります。

この宣言に使われるのが、SPF、DKIM、DMARCという3つの技術です。

複雑に見えますが、目的はシンプルです。

「あなたのドメインを騙ったメールが届いたら、偽物だと受信側に判断させる」

それだけです。

具体的には、DNSレコードに「このドメインからは一切メールを送りません」と登録することで、受信サーバがなりすましメールを自動的に拒否できるようになります。

以下、各技術を見ていきましょう。

3つの対策技術

SPF(送信サーバを制限する)

SPFは、ドメインのDNSにTXTレコードを追加して「許可する送信サーバ」を宣言します。

メールを送信しないドメインの場合、「どのサーバからも送信しない」と宣言します。

v=spf1 -all

-all は「すべて拒否」を意味し、対象ドメインからの正当なメールは存在しないことを示します。

DKIM(電子署名で真正性を担保する)

DKIM(DomainKeys Identified Mail) は、メールに電子署名を付与し、DNSに登録した公開鍵で検証する仕組みです。

メールを送信しないドメインでは、「有効な公開鍵は存在しない」ことを示すために空の公開鍵を登録します。

v=DKIM1; p=

p= の値が空であることで、「対象ドメインの署名付きメールは存在しない」と宣言できます。

すべてのサブドメインに適用するため、ワイルドカード *._domainkey を使います。

DMARC(なりすましメールの処理を指示する)

DMARC(Domain-based Message Authentication, Reporting and Conformance) は、SPFやDKIMの検証に失敗したメールをどう扱うか、ドメイン所有者が指示できる仕組みです。

メールを送信しないドメインでは、すべて拒否(reject)を指定します。

v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;
タグ 意味
p=reject ドメインルートのポリシーを拒否に設定
sp=reject サブドメインのポリシーを拒否に設定
adkim=s DKIM検証をstrict(厳格)モードに設定
aspf=s SPF検証をstrictモードに設定

オプションで rua=[<mailto:your@email.com>](<mailto:your@email.com>); を追加すると、なりすましが検出された際にレポートを受け取れます。

Cloudflare DNSを使っている場合

Cloudflare DNSを使っている場合、MXレコードが未設定のドメインでは管理画面に「Email Security」の通知が表示されます。

通知画面からワンクリックで必要なレコードを追加できるので、手動で設定する必要がありません。

設定の確認方法

設定が正しく反映されているかは、以下の方法で確認できます。

コマンドラインで確認

# SPFの確認
dig TXT [example.com](<http://example.com>)

# DKIMの確認
dig TXT *._[domainkey.example.com](<http://domainkey.example.com>)

# DMARCの確認
dig TXT _[dmarc.example.com](<http://dmarc.example.com>)

オンラインツールで確認

dmarcian.com などのサービスを使えば、ドメイン名を入力するだけで一括チェックできます。

Mandated NL-Block - dmarcian
dmarcian

まとめ

メールを送信しないドメインであっても、なりすましのリスクは存在します。

以下の3つのDNSレコードを設定することで、ドメインを適切に保護できます。

  1. SPFv=spf1 -all を設定し、すべてのサーバからの送信を拒否
  2. DKIMv=DKIM1; p= を設定し、有効な署名が存在しないことを明示
  3. DMARCv=DMARC1; p=reject; ... を設定し、なりすましメールの拒否を指示

設定は数分で完了します。独自ドメインをお持ちの方は、早めに確認されることをお勧めします。

参考資料

Email sender guidelines - Google Workspace Admin Help
The guidelines in this article can help you successfully send and deliver email to personal Gmail accounts. Starting in 2024, email senders must meet the requirements described here to send email to G

メール送信者のガイドライン

メールを送信しないドメインを保護する方法|Cloudflare

Read more

ストロボの出力表記

ストロボの出力表記には、主に分数表記と数値表記の2種類がある。それぞれの仕組みと、実際の撮影での使い勝手の違いを整理する。 分数表記 出力をフルパワーに対する比率で表す方式。1/1がフルパワーで、以降1/2、1/4、1/8と続く。 1/1 → 1/2 → 1/4 → 1/8 → 1/16 → 1/32 → 1/64 → 1/128 隣り合うステップ間が1段(1 stop)に対応し、光量がちょうど半分になる。中間値は機種によって1/3段刻みや1/10段刻みで調整できる(例: 1/16+0.3、1/16+0.7)。 分数がそのまま最大出力に対する割合を示すため、「今フルパワーの何分の1で発光しているか」が一目でわかる。

By Sakashita Yasunobu

ナウいパスワード要件

2025年8月、米国国立標準技術研究所(NIST)は認証ガイドライン SP 800-63B Revision 4 を正式公開した。このガイドラインは米国連邦政府機関向けの技術要件だが、世界中のWebサービスやセキュリティ基準に広く影響を与えている。日本でも総務省やIPAがこのガイドラインを参照しており、一般ユーザーにとっても「正しいパスワードの作り方」を知る上で最も信頼性の高い情報源といえる。 本記事では、NIST SP 800-63B-4の原文に基づき、パスワードに関する要件を整理する。各セクション末尾の緑・黄色のボックスは、そこから導かれる一般ユーザー向けの実践ポイントである。 出典 本記事の内容は、以下の公式資料に基づく。 * NIST SP 800-63B-4(2025年8月1日発効、本記事参照版: 2025年8月26日更新): Digital Identity Guidelines: Authentication and Lifecycle Management * 総務省「国民のためのサイバーセキュリティサイト」: 安全なパスワードの設定・管理 * IPA

By Sakashita Yasunobu

おそらく人生でもっとも暇な時を過ごす君たちへ

大学受験を終えた高校生。就活を早々と終えた大学生。 何年ものあいだ、勉強や準備に打ち込んできたのだろう。結果がどうであったにせよ、まずはお疲れ様だ。 これから過ごす時間は、おそらく君たちにとって素晴らしい、かけがえのない時間になる。もちろん、そうなるように日々を過ごしていくのは君たち自身だけれど、それでも「やっぱり違った」というなら、そのときは一言文句を言ってくれて構わない。 まだ後期の試験を控えている人、来年に向けてもう一年頑張らなければいけない人もいるだろう。心から応援している。 たぶん人生の前半で、今がもっとも暇で、もっとも目的がなく、もっとも圧力がない。あらゆる意味でもっとも解放された自由な時間だ。人生全体を見渡しても、こうした時間はそう何度も訪れるものではない。 で、大事なのは、この時間をどう使うかだ。 おすすめは美術館に行くことである 唐突だと思う。 普段から美術館に足を運ぶ趣味をお持ちの方には、釈迦に説法だろう。そういう方にはぜひ、お気に入りの過ごし方を教えていただけると嬉しい。 さて、美術と聞くと、なんだか遠い世界のように感じないだろうか。 現代ア

By Sakashita Yasunobu

NLLB-200をLoRAで日英翻訳に特化させた話

はじめに 言語処理100本ノック 2025 (Rev 1)は、東北大学の乾・鈴木研究室が公開している自然言語処理(NLP)の演習問題集である。UNIXコマンドによるテキスト処理、正規表現、形態素解析、単語ベクトル、ニューラル機械翻訳など、全100問を通じてNLPの基礎から応用までを体系的に学ぶことができる。 言語処理100本ノック言語処理100本ノックは、実用的でワクワクするような課題に取り組みながら、自然言語処理、大規模言語モデル、プログラミング、研究のスキルを楽しく習得することを目指した問題集です。言語処理100本ノック 2025 本記事では、第10章の課題であるニューラル機械翻訳モデルの構築について、実装の詳細と得られた知見を記録する。 💡事前学習済み翻訳モデル NLLB-200 に LoRA(Low-Rank Adaptation)を適用し、KFTTデータでファインチューニング。Google Colab(A100 GPU)で約3.5時間の学習により、テストデータで BLEU 22.09 を達成した。 課題「自分だけの翻訳エンジンを作る」 KFTTデータセット

By Sakashita Yasunobu