- 1. 概要
- 2. 設定
- 3. 再起動
- 4. 確認
- 5. 参考サイト
1. 概要
これは、メールの「DMARC(Domain-based Message Authentication, Reporting & Conformance)」設定です。
メールサーバを立てないのであれば、必要ありません。
2. 設定
「zone」ファイルの末尾の方に。
「_dmarc」レコードを追加します。
最小の記述は、以下。
_dmarc IN TXT "v=DMARC1; p=none"
細かく設定するには、以下の形式。
_dmarc IN TXT "v=DMARC1; p=...; rua=...; ruf=...; sp=...; pct=..."
最小単位で「""」内は、「v=DMARC1; p=none;」でよかそうです。
「""」内のパラメータは、主に下記の意味を持ちます。
| パラメータ | 意 味 | 備考 |
| v | バージョン 2025年7月10日時点では「DMARC1」と記述 | |
| p | ポリシー
none:認証失敗時の処理は行わず、レポートのみを送信
quarantine:認証失敗時のメールを隔離
reject:認証失敗時のメールを拒否
| |
| rua | レポート URI DMARC 認証結果の集計レポートを送信する先のメールアドレスを指定 | |
| ruf | フォレンジックレポート URI DMARC 認証失敗時の詳細レポートを送信する先のメールアドレスを指定 | |
| sp | サブドメインポリシー サブドメインにも DMARC ポリシーを適用するかどうかを指定 | |
| pct | パーセント DMARC ポリシーを適用するメールの割合を指定 | |
「_dmarc」の後ろに、「.(ドット)」でつなげて、ドメイン名を記述することで、ドメイン指定もできるようです。
「p=」の値は、実際には、「quarantine」か「reject」にすべきようです。
「example.com」「sub.example.com」に対して設定するには、下記のように記述します。
_dmarc.example.com. IN TXT "v=DMARC1; p=quarantine;"
_dmarc.sub.example.com. IN TXT "v=DMARC1; p=quarantine;"
3. 再起動
上記設定を変更したら。
YYYYMMDDNN ; Serial
のシリアルナンバーを更新して。
nsd-checkzone zone_name zone_file
でチェック後。
nsd-control reload
で再起動します。
4. 確認
設定されていることを「drill」コマンドで確認します。
drill TXT _dmarc.sub.example.com
の結果に、下記の行。
_dmarc.sub.example.com. 3600 IN TXT "v=DMARC1; p=quarantine;"
が存在すれば、定義は、問題ないということになります。
(実際のコマンドの結果に、色はつきませんぜ)
5. 参考サイト
本ページは、下記のサイト、および「ChatGPT」くん、「Google」大先生を参考にさせていただきました
「FreeBSD 14 : BIND : DMARC レコードの設定」
|
|