spam は深刻な社会現象になっています。JEAGでは日本標準の迷惑メール対策技術として SPF と DKIM を提言しています。このうち簡単に対応が出来る SPF の設定方法を「第16章 セキュリティアップ」の追加情報として公開します。

10 今すぐSPFを書こう

 世の中で横行している spam を送りつけてくる spamer は、クライアントパソコンに spam 送出プログラムをインストールして、直接相手のMTAに spam を送りつけてくるケースが多い。つまり、送出 MTA を偽装して spam を送出しているのだ。

 この偽装を見破るには、ドメインが持っている送出 MTA を確認し、正当な MTA 以外の IP アドレスから送出されたメールは spam と断定すれば良いことになる。

 SPF(Sender Policy Framework)とは、メールを送出したMTAが正当なMTAであることを証明するための技術だ。

 JEAG(http://jeag.jp)では日本の標準 spam 対策技術として SPF と DKIM の2つを指定している。JEAGは大手プロバイダと経済産業省、総務省がメンバーとなっており、 大手プロバイダでは既に SPF チェックの導入がはじまっている。各企業に対してもこれらの spam 対策技術の導入を呼びかけているので、spam に誤認されたくなければこれらの対策技術を導入しなくてはならない。

 とはいえ、DKIM は DKIM に対応した MTA が必要になるので即時対応するのは難しいのも実情だ。その点 SPF は DNS に SPF を記述するだけなので「今すぐ」対応することが可能だ。

 今すぐ SPF を記述することをお勧めする。

10.1 SPF の仕組み

 SPF はドメインが使用する MTA の IP アドレスを通知する。例えば送信元メールアドレスが mura@ripe.co.jp であれば、ripe.co.jp が使用する MTA の IP アドレスを調べればいい。この SPF 情報は DNS の TXT レコードに記述する。

 試しに、nslookup を使って ripe.co.jp の SPF を見てみよう。

C:\>nslookup -q=txt ripe.co.jp
Server: dc001.vwnet.jp
Address: 192.168.33.1

ripe.co.jp text =

    "v=spf1 +mx -all"

 SPF に「+mx」と書かれているので、MX 登録されている MTA からメールが送出され、「-all」とあるので、それ以外からメール送出はあり得ないと記述されている。

 SPFの詳細説明は RFC4408(Sender Policy Framework (SPF) for Authorizing Use of Domains in E-Mail, Version 1)に譲るとして、簡単に SPF の仕様を解説しよう。

 SPFは以下のフォーマットで記述する(青部分固定)
v=spf1 +送出MTAリスト 送出MTAリスト以外から送出された場合の判定all

 例えば、mx 登録されているMTAからしかメールは送出せずに、それ以外から送出された場合は SPFステータスを Fail とする場合は以下のように記述する。

v=spf1 +mx -all

 送出MTAは以下のように記述する。(+は省略可能)

MXを指定 +mx
IPアドレス指定 +ip4:61.123.198.244
ネットワークID指定 +ip4:61.123.198.240/29

 複数のMTAを記述する場合は半角スペースで区切って羅列すれば良い。

 送出MTAリスト リスト以外から送出された場合の判定は以下のように記述する。

Fail -all
SoftFail ~all
Neutral ?all

 それぞれのステータスをどのように処理するかは受信側のポリシーに任されるが、一番強力な否定である「Fail (-all)」を設定するのが良いだろう。JEAGも移行措置としてSoftFailを使うことは良いとしているが、最終的にはFailにする事を強く推奨している。

 メール送出があり得ないドメインに対しては「v=spf1 -all」を設定しておくのが良いだろう。

10.2 SPFを設定する

 MS-DNSにSPFを記述するには、DNSマネージャを開き、ターゲットとなる前方参照ゾーンにTXTレコードを追加する。レコードの追加は「その他の新しいレコード」を選択すればTXTレコードを選ぶことが出来る。


TXTレコードの指定

 エイリアスには何も入力せずに「テキスト」にSPFを記述すれば設定は完了だ。


SPFを記述

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.