スポンサーリンク

【応用情報技術者試験】SPF

メール認証の基本|SPF・DKIM・DMARCを区別する 用語

SPFは、DNSに公開された送信方針で接続元IPアドレスを評価します。この記事ではレコードの書き方の意味と、読み間違えやすい点を整理します。実際のDNS設定は変更せず、学習用の例で確認します。

学習用レコードを読む

v=spf1 ip4:192.0.2.0/24 -all

192.0.2.0/24は文書用の例示アドレスです。この例を実運用へそのまま登録するものではありません。

部分 意味
v=spf1 SPFのバージョンを表す
ip4:192.0.2.0/24 該当するIPv4の範囲を照合する。一致時は省略された+によりPass
-all 先の条件に一致しなかった送信元はFailとする

修飾子と結果の違い

記号 一致したとき
+ Pass(省略時も+)
– Fail
~ Softfail
? Neutral

allは常に一致するため、前の仕組みに一致しなかった場合の扱いを表す位置で使います。例えば~allと-allは同じ結果ではありません。最終的な受信処理は受信側の方針によります。

includeは単純な文字列の追加ではない

includeは、別ドメインのSPFを評価して、その結果がPassかを利用する仕組みです。参照先を増やすとDNSを伴う評価が増えます。SPFにはDNS検索を生じさせる仕組み・修飾子の評価回数に制限があり、無制限に連結できません。

1回の評価でDNS検索を伴う対象は合計10回が上限です。include先の再帰的な評価も含まれ、単純なTXTレコードの文字数や、記載したIPアドレス数の上限という意味ではありません。

運用で確認する観点

  • 同じ名前にSPF用TXTレコードを複数作らず、整合した1つの方針にする。
  • 利用している正規の送信経路を把握する。
  • 転送、DNS障害、構文の問題を、悪意のある送信と区別する。
  • SPFのPassと、表示Fromの整合性や内容の安全性を区別する。
確認問題:~allと-allは、どちらも同じFail?

違います。~はSoftfail、-はFailです。認証結果と受信側の最終処理も区別します。

noteで認証・署名の基礎を復習

メール認証の理解には、なりすまし、公開鍵、ディジタル署名の違いが役立ちます。情報セキュリティのnote教材で関連用語と対策を整理し、各技術が何を確認するか説明してみましょう。

情報セキュリティのnote教材を確認する

関連する解説

note教材ナビでテーマを選ぶ

参考資料

RFC 7208:SPF / RFC 6376:DKIM

コメント