テクニカルジャーナリスト
海上 忍
2011年3月
【目次】
1. 迷惑メールフィルタの概要
1.1 Apple Mailの迷惑メールフィルタとは
1.2 迷惑メールフィルタを有効にするには
2. 迷惑メールを見分けるための準備
2.1 最初は「受信トレイに残す」動作モードで
2.2 IMAPアカウントの場合
2.3 迷惑メールを自動/手動で削除する
3. 迷惑メールフィルタの基準を知る
3.1 メールヘッダの役割を知る
3.2 迷惑メールの判定基準
3.3 任意の判定条件を追加する
4. 迷惑メールフィルタを使うコツ
4.1 迷惑メールと判定されない場合には
4.2 動作モードを変更する
4.3 学習をやり直す
5. その他の便利機能
5.1 プロバイダの迷惑メールフィルタサービスとの連携
5.2 任意のヘッダを手がかりにフィルタする
5.3 「迷惑メールを送信者に戻す」前に
1. 迷惑メールフィルタの概要
1.1 Apple Mailの迷惑メールフィルタとは
Mac OS Xに標準装備されているメールクライアント「Mail」(以下、Apple Mail)には、メール受信時に迷惑メールを検出し、自動的に削除したり適切なメールボックスに振り分けたりする「迷惑メールフィルタ」が用意されています。
迷惑メールフィルタを有効にすると、Apple Mailは受信するメールすべてを分析し、抜き出したキーワードをデータベース化したうえで迷惑メールの判定材料とします。判定の精度はメールの受信回数が増えるにつれ向上するため、長期間使い続けることにより、問題ない通常のメールか迷惑メールかを高い精度で振り分けることが可能になります。
Apple Mailの迷惑メールフィルタは、LSA(Latent Semantic Analysis)と呼ばれる理論に基づき、迷惑メールを選別します。LSAの基本的な動作原理はベイジアンフィルタ※1と同様で、通常のメールと迷惑メールそれぞれの内容を分析し、迷惑メールに多い単語の出現頻度などを判断材料として得点を算出、その得点が一定の基準を超えたときに迷惑メールと判定する仕組みです。
※1:ベイズ確率モデルという統計学的手法を用いた迷惑メール検出機能。EudoraやThunderbirdの迷惑メールフィルタなどに採用されている。
図1 Apple Mailに搭載された迷惑メールフィルタの概念図
1.2 迷惑メールフィルタを有効にするには
迷惑メールフィルタを有効にするには、ツールバーから[Mail]→[環境設定…]を選択して環境設定パネルを表示し、[迷惑メール]タブ上の[迷惑メールフィルタを有効にする]チェックボックスを有効(チェックされた状態)にします。チェックボックスを無効(チェックが外れた状態)にすると、迷惑メールフィルタは無効化され、再びチェックボックスを有効にするまで機能しません。
環境設定パネルを閉じると、以降Apple Mailで受信するメールすべてが迷惑メールフィルタの対象となります。Apple Mailに登録したメールアカウントは一律に対象とされるため、特定のメールアカウントをフィルタ対象から除外する場合は、Apple Mail以外のメールクライアントを使うほうが現実的です。
図2 [迷惑メールフィルタを有効にする]チェックボックスを有効にすると、以降受信するメールすべてを対象にフィルタリングが行われる
2. 迷惑メールを見分けるための準備
2.1 最初は「受信トレイに残す」動作モードで
Apple Mailの利用を開始した時点では、受信したメールが迷惑メールかどうか判定するためのデータが不足しています。そのため迷惑メールフィルタの運用を開始した直後は、受信したメールはすべて受信トレイに振り分け、迷惑メールと覚しきものはその旨表示する動作モード(以下、受信トレイに残すモード)が選択されています。
受信トレイに残す動作モード時は、迷惑メールと判定されたメールの先頭部分に「Mailによって迷惑メールと判断されました」というメッセージが表示されます。迷惑メールフィルタを使い始めた当初は、オンラインショップやメーリングリストなど一斉送信されるメールの多くは迷惑メールと誤判定されるため、メールの内容に目を通し、問題なければ[迷惑メールではない]ボタンをクリックします。この作業を繰り返し、ある程度の数をこなせば、次第に判定の精度が向上します。
通常のメールとして判定されている迷惑メールは、そのメールを選択した状態でツールバー上部の[迷惑メール]ボタンをクリックすると、メールヘッダとメール本文の内容が分析され、必要な情報が迷惑メールデータベースに反映されたうえで迷惑メールとして処理されます。反対に、通常のメールにもかかわらず迷惑メールと判定されている場合には、[迷惑メールではない]ボタンをクリックすると、そのメール固有の情報は迷惑メールデータベースから削除され、次回同じ相手から受信した場合は通常のメールと判定されるようになります。
図3 迷惑メールと判定されたメールを表示すると、このような警告メッセージが現れる
2.2 IMAPアカウントの場合
IMAPアカウントを使用する場合、Apple Mailの初期設定では迷惑メールがサーバ上に保存されません。迷惑メール判定が下されたメールは、受信完了次第サーバ上から削除されてしまうため、迷惑メールフィルタの判定精度が低い時点では注意が必要です。
IMAPアカウント使用時に迷惑メールフィルタを有効化した場合には、環境設定パネルの「アカウント」項にある「メールボックスの特性」タブを開き、[迷惑メッセージをサーバに保存する]チェックボックスを有効にします。なお、サイドバーに表示されたIMAPアカウントのメールボックスを[control]キーを押しながらクリックし、現れたポップアップメニューで[情報を見る]を選択しても、[メールボックスの特性]タブを表示できます。
図4 IMAPアカウントの場合、[迷惑メッセージをサーバに保存する]チェックボックスを有効にしておくこと
2.3 迷惑メールを自動/手動で削除する
Apple Mailの初期設定では、迷惑メールと判定されたメールはフォルダへの振り分けのみ行われます。そのままでは削除されないため、一定期間経過後に自動削除する設定に変更するか、任意のタイミングで手動削除を実行します。
一定期間経過後に自動削除する場合には、環境設定パネルの「アカウント」タブで「メールボックスの特性」を選択し、「迷惑メール」欄にあるプルダウンメニューで削除のタイミング(1日後/1週間後/1ヶ月後/Mail終了時)を変更します。
任意のタイミングで迷惑メールと判定されたメール(「迷惑メール」メールボックス内のメール)を手動削除する場合には、メニューバーから[メールボックス]→[迷惑メールを消去]を選択します。消去を確認するダイアログが現れるので、[消去]ボタンをクリックすると、「迷惑メール」メールボックス内のメールは完全に消去されます。
図5 初期設定では「消去しない」に設定されているので、自動削除する場合にはタイミングを指定する
図6 メニューバーから[メールボックス]→[迷惑メールを消去]を選択すると、任意のタイミングで迷惑メールボックス内を全消去できる
3. 迷惑メールフィルタの基準を知る
3.1 メールヘッダの役割を知る
我々が普段「メール」と呼ぶ文字情報をやり取りするための約束事は、IETF※2という組織により標準化作業が行われ、「RFC※3」と称されるインターネットに関する技術仕様書の一部として一般公開されています。携帯電話からコンピュータへ、Apple MailからWindows Live Mailへといった具合に、ハードウェアやソフトウェアの違いを乗り越えてメールを送受信できることは、RFCという全世界共通の約束事が存在するからにほかなりません。
※2:Internet Engineering Task Forceの略。インターネット技術の標準化を推進する任意団体
※3:Request for Commentsの略。IETFが発行するインターネットにかかわる文書の総称
RFCのメールに関する仕様を定めた文書では、メールの本文の前に「メールヘッダ」(あるいは単純にヘッダ)と呼ばれる情報欄を設けることを義務付けているため、どのようなメールにも必ずメールヘッダが存在します。メールヘッダを分析し、発信元のメールアドレスや送信者名、件名などの情報を蓄積することが迷惑メールを見分けるためには不可欠で、Apple Mailの迷惑メールフィルタも事情は同様です。
図7 メニューバーから[表示]→[メッセージ]→[すべてのヘッダ]を選択すれば、メールヘッダの内容を確認できる
3.2 迷惑メールの判定基準
Apple Mailの迷惑メールフィルタは、受信したメールのヘッダを定義ファイル(~/Library/Mail/MessageRules.plist)に照会し、迷惑メールかどうかを判定します。初期設定では、以下の1から4の条件を順にテストし、すべての条件に該当していれば迷惑メールとして処理されます。
- 差出人(のメールアドレス)がアドレス帳に登録されていない
- 差出人(のメールアドレス)に宛ててメールを送信したことがなく、宛先履歴情報が存在しない
- 自分の氏名宛てに送信されたメールではない
- 迷惑メールとして手動設定されている
表1 迷惑メールと判定される基準の例
ヘッダ上の項目 |
概 要
|
差出人(From) | メールを送信した人物の名前とメールアドレス |
宛先(To) | メールの宛先となる人物の名前とメールアドレス |
件名(Subject) | メールのタイトル。アダルト関係や薬物関係の用語を多く見かけるが、「ご案内」など一見では区別できないタイトルもあるため、これだけで判定材料とすることは難しい |
本文 | ユーザーがどのような迷惑メールを受け取るかによって基準が異なる。たとえば、薬物の購入を勧める迷惑メールが多ければ、薬物の名前や購入を誘う言い回しに反応しやすいフィルタに成長する。逆に、薬物の購入を勧めるメールを迷惑メールと認識しなければ、薬物の名前には反応しないフィルタとなる |
3.3 任意の判定条件を追加する
迷惑メールの判定には、迷惑メールフィルタが収集したメールのタイトルや本文の語句も用いられます。語句は受信したメールの通数に応じて自動的に増えるため、手作業で登録する必要はありませんが、任意の語句を迷惑メールのキーワードとして指定することも可能です。
任意の語句を登録する場合には、環境設定パネルの「迷惑メール」タブ左下にある[詳細…]ボタンをクリックし、迷惑メールの判定条件を表示します。4つめの条件の右端にある[+]ボタンをクリックしたあと、プルダウンメニューで「メッセージの内容が」と「を含む」を選択し、任意の語句を入力して[OK]ボタンをクリックすれば、次回メールを受信するときから新ルールが適用されます。
4. 迷惑メールフィルタを使うコツ
4.1 迷惑メールと判定されない場合には
迷惑メールフィルタには学習能力があるものの、100%の検出精度は期待できません。迷惑メールを送信する業者はメールヘッダの偽装技術に長けているため、転送経路などの情報は一定しないうえ、メールの文面も変化します。また、迷惑メールデータベースには、迷惑メールと判定されたメールの情報が反映されるため、迷惑メールを通常のメールとして放置したり、ただ“迷惑メール”メールボックスへ移したりするだけでは、迷惑メールフィルタの精度向上に貢献しません。
フィルタによる自動検出に失敗した迷惑メールは、発見次第削除することは避け、手動で迷惑メールに設定することが上策です。必ずツールバーの[迷惑メール]ボタンをクリックし、迷惑メールとしてのフラグを立ててから、“迷惑メール”メールボックスへの移動や削除などの処理を行うようにします。
図9 通常のメールと判定されたメールを選択して[迷惑メール]ボタンをクリックすると、送信主のアドレスなど情報が分析され迷惑メールデータベースに蓄積される
4.2 動作モードを変更する
迷惑メールフィルタの初期状態として設定されている動作モード(環境設定パネルでの選択肢作は「迷惑メールにして、”受信”トレイに残す」)では、迷惑メールと判定されたメールは薄茶色に色分けされますが、通常のメールと同じ“受信”メールボックスに保存されます。
自動検出の精度が高まったと感じた場合には、動作モードを変更すると、通常のメールと迷惑メールを仕分けることができます。環境設定パネルの「迷惑メール」タブを開き、「”迷惑メール”メールボックスに移動」ラジオボタンを有効にすると、その時点で存在する迷惑メール(自動判定されたものを除く)を移動させるかどうか確認したあと、“迷惑メール”メールボックスが作成され、以後迷惑メールと判定されたメールが自動的に移動されます。
図10 動作モードを変更するときには、迷惑メールを“迷惑メール”メールボックスへ移動するかどうか確認される
4.3 学習をやり直す
迷惑メールフィルタは、学習した内容をライブラリフォルダ上のデータベースファイル(~/Library/Mail/LSMMap2)に記録します。独自のフォーマットが用いられるため、蓄えられた情報を閲覧したり任意の内容を書き込んだりすることはできませんが、学習を最初からやり直すことは可能です。迷惑メールフィルタが正しく機能しない場合など、データベースになんらかの問題が生じた場合には、この方法が有効な解決策となります。
学習をやり直す場合には、環境設定パネルの「迷惑メール」タブを表示し、[リセット…]ボタンをクリックします。現れた「迷惑メールデータベースのリセット」ウインドウで[はい]ボタンをクリックすると、データベースファイルの内容は消去されます。
図11 [はい]ボタンをクリックすると、迷惑メールフィルタデータベースが初期化される
5. その他の便利機能
5.1 プロバイダの迷惑メールフィルタサービスとの連携
Apple Mailでは、インターネットサービスプロバイダ(以下、プロバイダ)が提供する迷惑メールフィルタサービスと連携する機能が用意されています。設置された迷惑メールフィルタの種類や設定方法にもよりますが、迷惑メールと覚しきメールにはヘッダ部分に「X-Spam-Flag: YES」といった目印となる行が挿入され、迷惑メールかどうか判定する手がかりとなります。
プロバイダの迷惑メールフィルタサービスを利用する場合には、環境設定パネルの「迷惑メール」タブ上にある[インターネット・サービス・プロバイダが設定した迷惑メールヘッダを信頼する]チェックボックスを有効にします。
図12 契約しているプロバイダが迷惑メールフィルタサービスを実施している場合には、検出精度をより高めることも可能
5.2 任意のヘッダを手がかりにフィルタする
プロバイダの迷惑メール識別機能が「X-Spam-Flag」以外のヘッダを挿入する場合※4には、そのヘッダを条件として追加する必要があります。たとえば、迷惑メールのヘッダに「X-Spam-Status: YES」行を挿入するメールサーバの場合は、以下の手順で作業を行います。
※4:どのようなヘッダが挿入されるかは、メニューバーから[表示]→[メッセージ]→[すべてのヘッダ]を選択すれば確認できる
- メニューバーで[Mail]→[環境設定…]を選択し、環境設定パネルを表示します。
- 「迷惑メール」タブを表示し、「カスタムの操作を実行(”詳細”をクリックして構成)」ラジオボタンを有効にします。
- 画面下の[詳細…]ボタンをクリックします。
- 迷惑メールを見分ける最後の条件(2行目)の右端にある[+]ボタンをクリックします。
- 追加された「差出人」プルダウンメニューをクリックし、[ヘッダリストを編集…]を選択します。
- 現れた「メッセージヘッダ」ウインドウ左下にある[+]ボタンをクリックします。
- キー入力が可能な状態になるので、「X-Spam-Status」と入力して[OK]ボタンをクリックします。
- 「いずれかの受信者が」プルダウンメニューをクリックし、6の作業の結果追加された[X-Spam-Status]を選択します。
- 空欄に「YES」と入力し、右横の判定条件が「を含む」に設定されたことを確認して[OK]ボタンをクリックします。
5.3 「迷惑メールを送信者に戻す」前に
Apple Mailには、迷惑メールを送信元に送り返す機能が用意されています。対象のメールを選択し、メニューバーから[メッセージ]→[戻す]を選択すると、「Returned mail: User unknown」というタイトルでメールが返信され、メールアドレスが存在しないため逆送されてきたメールとの錯覚を送信元に与えることができます。
ただし、不特定多数に対し送信される迷惑メール(スパム)に対し、この機能は利用すべきではありません。一見したかぎりではメールが返送されるように映りますが、転送経路の情報は通常どおりメールヘッダに記載されるため、識者がメールヘッダを調べればメールサーバにより逆送されたものではないことは一目瞭然です。スパム業者は、返信があったことをもってそのメールアドレスが“生きている”―― 広告としての有効性はともかく内容は確認されている ―― と判断するため、反対に迷惑メールが増えてしまう可能性があります。
いわゆるスパム業者は差出人情報(メールヘッダーの「From」行)を含めて偽装する場合が多く、メールを送信しても宛先不明で戻ってくるケースがほとんどです。スパムと覚しき迷惑メールには、安易に返信しないほうが賢明でしょう。
図15 迷惑メールを“戻す”ことが必ずしも得策とはかぎらないことに注意