メールの差出人の正当性を確認するために用いられるドメイン認証の方式
迷惑メールが減らない理由の1つに、差出人のメールアドレスを偽装する「なりすましメール」を簡単に送信できることが挙げられる。メール送信のプロトコルであるSMTPでは差出人のメールアドレスを自由に設定できてしまうため、この仕様を悪用すれば誰でも簡単に自分の身元を隠した迷惑メールを送信することが可能だ。
こうしたなりすましメールに対抗するための技術として利用されているのが、差出人の身元を確認するためのドメイン認証だ。ドメイン認証のうちSPFの場合は、SMTPの通信プロセスにおいて、SPFレコードを確認することで差出人のドメインが正規かどうかを判別している。
SPFを用いた認証手順
SPFを使ったドメイン認証は以下のような手順で行われる。
1)SPFレコードの登録
差出人側のドメインを管理するDNSサーバーに、ドメイン名とメールサーバーのIPアドレスがセットになったSPFレコードを登録しておく。
2)メールサーバーによるDNS問い合わせ
SMTP経由でメールを送信する際、送信前の段階において、送受信双方のメールサーバー間で通信コネクションが確立される。このタイミングで、メールの差出人ドメインを受信側のメールサーバーに伝達。受信側のメールサーバーは、ドメインのIPアドレスを確認するためにDNSサーバーへ問い合わせを行う。その際、同時にSPFレコードを入手する。
3)IPアドレスの一致を確認
SPFレコードに記述されたIPアドレスと差出人のIPアドレスが一致することを確認し、メールの送信が許可される。
SPFの有効性
SPFはDNSサーバーにSPFレコードを設定するだけで対応可能なため、容易に導入できるというメリットがある。しかし、SPFで検証できるのは送信元のドメインの正当性のみであり、ヘッダー情報の改ざんには対応できない。
また、転送メールの場合、差出人のメールサーバーのIPアドレスが書き換わってしまうため、正規のメールでもSPFの検証に失敗してしまう。迷惑メール対策を厳格に行うためには、電子署名の技術を使って改ざんを検知できるDKIMやDMARCといったドメイン認証技術の導入が求められる。