HOME   Support BBS

Anti Spam Prxoy Server Blueberry USO Mark2 version 1.3.0.3 (Last Updated:2006/09/25 10:00)

Latest version : 1.3.0.3

概略

このソフトウエアは、スパム(迷惑メール)を振り分ける為に使用します。 振り分けにはベイズ理論が使用されています。ベイズ理論とは、経験的確率から、 将来の発生頻度を推測する考え方です。

このソフトウエアでは、具体的には、メールヘッダと本文に含まれる単語が、 スパムなメールと普通のメールに現れる確率を計算しておき、新規に受け取った メールのスパム確率を計算します。この確率が設定された値より大きい場合は スパムと判定されます。

対応言語は欧文と日本語です。内部的にはユニコードで処理しているので、 中国語やハングルにもロジック的には対応出来るのですが、 悲しいかな、作者は、この言語で書かれた文章をを単語に分割する知識を持ち合わせていません。

なお、バージョン 1.0.3.1 からは、スパム判定に加え、スパム以外のメールを 複数(5つ)のカテゴリに分類できるようになりました。詳細は次項「もっとも基本的かつ大切な事」 をご覧ください。

特徴

  • ベイズ理論を応用した振り分けプログラムはいくつか公開されているが、インタプリタ言語 で書かれているものが多い。
    これに対して、このソフトウエアは C++ でかかれいて、自分自身 以外に必要とするモジュールはない、
  • メール本文だけではなく、メールヘッダの情報も活用している。 (たとえば Received ヘッダに含まれるIPアドレス等)
  • メールを自分のフォルダにキャッシュして、メーラに渡すのではなく、 メールサーバとメーラの間に入り、リアルタイムにメールをメーラに 渡すので、メールロストの危険性がない。
  • 作者が日本人なので、当然、日本語にも対応している。
  • 複数のメールアカウントに対応できる。
  • APOPにも対応している。
  • POP ver SSLにも対応しているので、SSLしか受けないメールサーバのスパム対策も可能(例:gmail

バージョンアップに関しては、このページの更新履歴を必ず読んでください。


動作環境

Windows 2000/XP

Windows VISTA への対応

    Windows VISTA 正式版のリリースを待ち現バージョンの動作確認をおこない、問題がある場合は マイナーバージョンアップし、Windows VISTA での稼動を確保、その後 Windows VISTA の最新 UI や セキュリティ等を取り入れた Windows VISTA バージョンリリース予定です。



インストール
  1. ダウンロードしたbb*.zip を、インストールしたいディレクトリに解凍します。

    解凍が完了すると,次のような実行可能ファイルが作成されます。

    • bbuso2.exe (Blueberry USO Mark2 サーバ ; サービスとして稼動します。)
    • bbuso2man.exe (Blueberry USO Mark2 マネージャ)
    • install.exe (インストーラ)

  2. install.exe を実行します。

    このプログラムを実行するとインストールのためのウイザードが表示されますので、 この指示に従ってインストールを進めてください。

  3. Blueberry USO Mark2 マネージャ を起動して各種設定を行います。

    インストール時にBlueberry USO Mark2 マネージャへのショートカットを 作成しなかった場合は bbuso2man.exeを直接実行して下さい。

以上でインストールは完了です。



バージョンアップ

    バージョンアップの場合は「コントロールパネル」「プログラムの追加と削除」で一旦アンインストール するか、ダウンロードしたbb*.zip を、現在インストールされているディレクトリ以外の場所に 解凍して、上記の「インストール」と同じ手順を実行して下さい。



アンインストール
  1. コントロールパネルを開きます。
  2. プログラムの追加と削除を選びます。
  3. 一覧から「Blueberru USO Mark2 」を選びアンインストールを実行します。

以上でアンインストールは完了です。レジストリから Blueberry USO Mark2 の情報が 削除され、ショートカットも削除されます。

ただし、インストール先ディレクトリのプログラムやデータは削除されませんので、 必要に応じて削除してください。



もっとも基本的かつ大切な事

先の「概略」で説明した事から、お気づきと思いますが、 「このプログラムをインストール したら直ちにメールがバンバン振り分けられる」 という事ではありません。 インストール直後はどのようなメールがスパムなのか、又スパム以外のメール をどのカテゴリに分類すればいいのかを、このソフトウエアは知りませんので、 それを教える為のトレーニング が必要です。

トレーニングは、 このソフトウエアが間違った判断を行った場合に は、それを訂正するという事を繰り返して 行います。最初は全部のメールがスパムではないと判断 され、カテゴリ別分類においても全て InBox に 振り分けられますがトレーニングを繰り返す内に、だんだん利口 になり、正しく判定する確率が高くなります。

このトレーニングが行われる事によって、単語単位にスパムやカテゴリ別分類 の為の確率が保持されたデータベースが構築されて行きます。

具体的には

このソフトウエアを通してメールを受信すると、スパムと判定されたメールの履歴は Spams というフォルダに、そうではないメールは InBoxまたはその他のメールボックスに 格納され記録されます。それぞれのフォルダに記録された履歴は[Menu] ->[Tool]->[List Classified Messages] で表示させる事ができます。

次のような画面が表示されます。

スパムではないのにスパムと判定されたメールがある場合は、Spams フォルダを 表示させ、誤って判定されたメールを選択し、InBox又はカテゴリ別フォルダに移動させます。 その逆の場合はInBox又はカテゴリ別フォルダを表示させSpams フォルダに移動させます。

メールを移動させるには、リストの上でマウスの右ボタンを押すと、それぞれ次のメニューが表示されますので、 その中のMove To ...Mark As Spamで行います。


      
  • Add To Super Address

    このメニューは、選択されたメールの差出人のアドレスをスパーアドレスに 登録します。(重複登録チェックをしていないので、注意してください。)

  • Give Title

    カテゴリ別メールボックスに名前を付ける事ができます。

  • Reset MailBox

    表示されているメールボックスにメールを振り分ける為に作成された全ての情報がリセット されます。このメールボックスへのメールの振り分けを中止する場合に使って ください。


訂正処理が終わるとこれらの履歴は不要ですので、上のメニューにある削除機能を使って 削除しても構いません。意識的に削除しない場合でも、履歴が作成されてから3日が過ぎると 自動的に削除されます。


〇振り分けの具体的振る舞い〇

メールの振り分けはまずスパムかそうではないかに2分類され、スパムはスパムフォルダに 記録されます。スパム以外のメールはカテゴリ1から5のどのフォルダに振り分けるべきか 確率計算され、計算結果がある確率を超えもっとも高い確率をもつフォルダに振り分けられます。 これ以外のメールはInBoxに振り分けられます。

振り分けの結果はメールヘッダに X-BBUSO-Classified が付け加えられて カテゴリ番号が設定されます。 InBox は0番、その他は1から5の間の 番号が設定されます。

なお、スパムと判定されたメールは上の X-BBUSO-Classified ヘッダは 付け加えられずに、「設定」の「How To Notify Spams」で設定された方法に従い 件名に *USO* が付けられるか、あるいは、 メールヘッダ  X-BBUSO-Spam-Detection: positive が付け加えられます。

(例)

  • X-BBUSO-Classified: 0

    InBox に振り分けられた事を示しています。

  • X-BBUSO-Classified: 1

    カテゴリ1のメールボックスに振り分けられた事を示しています。


〇素朴な疑問?

"別にカテゴリ別に分類したくない、あるいは、カテゴリは5つもいらない"という場合

Bluberry USO Mark2 は、学習によってメールを振り分けますので、カテゴリ別分類 するようにトレーニングしない限りカテゴリ別に仕分けしません。という訳で使わない フォルダに振り分けられる事もありません。




日本語処理に形態素解析の導入(推奨)

「形態素解析」、なんたら難しそうな言葉ですが、ま。ここでは日本語の文章を 語に分割する事と思ってください。検索エンジンやら、音声読み上げなどで使われます。

これをやってくれるソフトにMeCab,ChaSen, KAKASI 等がありますが、 Blubeberry USO では、この処理に MeCabを利用する事ができます。

MeCabは奈良先端科学技術大学院大学自然言語処理学講座の開発する形態素解析器 ChaSenを基に開発された高速な形態素解析器です

次のURLに説明があり、ダウンロードもできます。http://mecab.sourceforge.jp/

このソフトウエアを導入したい場合は、上のページのBinary package for MS-Windows から Windows用のバイナリパッケージをダウンロードして、あなたの好きなディレクトリにインストールしてください。 MeCab はバージョン 0.78 から 最新の 0.92 までは全てに対応しているつもりですが、Blueberru USO で 動作しないバージョンがあるる場合はお知らせください。確約は出来ませんが極力対応します。

インストールが終わるとインストールしたディレクトリにbin というディレクトリが作成され、 ここにlibmecab.dll がありますので、 これをBluberry USO  をインストールしたディレクトリにコピーしてください。 MeCab 最新版 0.92 の場合は同様に iconv.dll もコピーして下さい。

これで、Blueberry USO日本語処理に形態素解析を導入する事ができます。 これを有効にするには、Blueberry USOの「基本設定」でUse Japanease Tokenizerに チェックをつけてください。

正しくインストールできている場合は、Blueberry USO のコンソールウインドウに  Japanease Tokenizer Installed. と表示されるはずです。 また、正しく実行されている場合は同様にコンソールウインドウに

    Initialize JP Tokenizer.
    Initialize done.
と表示されます。

なお、Bluberry USO の単語データベースがすでに作成されている場合は、この機能を導入した事で単語認識 の方法が変わり一時的にスパム判定能力が落ちるかもしれませんが、次第に回復してきます。




基本設定
操作: [Menu] -> [Settings]

  • Listening Port#
    • メーラからの接続を待ち受けるポート番号です。デフォルトは 110番 ですが、 他のサーバと競合する場合は設定して下さい。

  • TimeOut
    • POP: POP3  プロトコルで通信する場合のタイムアウトです。(単位は秒)

      DNS: DNS  を検索する場合のタイムアウトです。(単位は秒)

      DNS はメールアドレスの真贋をチェックする時に利用されます。

  • Probability Of Spam
    • 確率計算の結果がこの設定より高くなった場合にスパムと判定されます。

  • E-mail address & IP address
    • Verify e-mail address.

      From,To,Cc に含まれるメールアドレスの真贋をチェックしてスパム確率計算の 要素にします。

    • Verify IP address.

      送信元(経由も含む)IPアドレスが DNS ブラックリストに載っているかどうかを 調べてスパム確率計算の要素にします。

    • DNS Server

      メールアドレスの真贋やIPアドレスを調べるをチェックする為に使用されます。

      • Detect AUTO

        DNS サーバを自動で探します。(NT,XP で有効です。)

      • Primary

        DNS サーバを指定する場合に設定します。このサーバは次の Secondary に優先されます。

      • Secondary

        Primary DNS サーバに不具合がある場合に利用されます。

  • How To Notify Spams
    • ここでは、スパムと判定されたメールにどんな印を付けるかを決めます。

      • Change Subject to "*USO*"

        件名が "*USO" に変更されます。元の件名は X-Subject: として 残されています。

      • Add "*USO*" to Top of Subject

        件名の先頭に "*USO" が付け加えられます。

      • Generate Msg Header (X-BBUSO-Spam-Detection: positive)

        メッセージヘッダに X-BBUSO-Spam-Detection: positive が付け加えられます。

  • How To DispaoseSpams
    • ここでは、スパムと判定されたメールをどう取り扱うかを決めます。

      • Do Nothing

        そのまま受信します。

      • Isolate Spams in Attachment as message/rfc822

        メールを加工して、message/rfc822 としてメールの内容を隠蔽します。

  • Options

    • Use Japanease Tokenizer
    • 日本語の処理において、形態素解析を行って単語認識を行いたい場合にチェック してください。なお、現在対応しているのは MeCab のみです。

    • Double Bias for Good English Token
    • スパムではない単語には、バイアスをかけてスパム確率を 計算していますが、英単語には、その倍のバイアスをかけます。

      これは、英文メールはほとんど全てがスパムで、そうでない メールはほんの少しだけ、たまーーに、受けとる場合に有効です。 これで、英文メールは全部スパムと判定されるのを防ぐ事ができる と思います。

    • Open Window When MUA Connected
    • MUA(メーラ) が待ち受けポートに接続してきたら、このソフトウエアの コンソールウインドウを前面に表示させます。

    • Protocol Log
    • ログファイルは1日に1ファイル作成され7日を経過した ログファイルは自動的に削除されます

  • メーラ側の設定

    以上は Blueberry USO Mark2 側の設定ですが、メーラ側では最低限 次の設定が必要です。

    • POPサーバの設定

        もし、あなたのメールアカウントは APOP 認証が必要で、 メーラの設定にAPOPの設定がある場合にはオフにしてください。 Blueberry USO が自度的に認証を行います。

      • POP サーバの名前

          localhost

      • Port 番号

          先の設定 [Listening Port#] で設定したポート番号に 一致させます。

      • User-ID

          POP ユーザー ID@実際のメールサーバの名前[:ポート番号][APOP指定][/SSL]

          [:ポート番号]は、リモートメールサーバのポート番号が 110番の 場合は省略できます。 また、APOP での認証は自動判定しますが、明示的に指定する事もできます。

          (例)

            POP ユーザー ID が blueberry , メールサーバの名前が pop.mail.com 、 そしてポート番号が 110番の場合。

          • blueberry@pop.mail.com:110
          • POP ユーザー ID が blueberry , メールサーバの名前が pop.mail.com 、 そしてポート番号が 110番の場合で、APOP 認証する場合

          • blueberry@pop.mail.com:110:apop
          • POP ユーザー ID が blueberry , メールサーバの名前が pop.mail.com 、 そしてポート番号が 995番の場合で、POP over SSL で通信する場合

          • blueberry@pop.mail.com:995/SSL
          • POP ユーザー ID が blueberry , メールサーバの名前が pop.mail.com 、 そしてポート番号が 995番の場合で、POP over SSL で通信し、APOP 認証する場合

          • blueberry@pop.mail.com:995:apop/SSL

          /SSL の代わりに以下のようの記述して、暗号化方式を指定する事もできます。

          • /SSL

            SSL V23

          • /SSL2

            SSL V1

          • /SSL2

            SSL V2

          • /TLS1

            TLS V1

      • パスワード

          POP サーバログイン用のパスワードです。

      • タイムアウト

          スパムチェックは実際にメールが取得される段階で 行われますので、通常の受信に比べ、それなりのオーバーヘッダを 考える必要があります。 普通のメールは、すぐにチェックが終わるのですが、 恐ろしくレスポンスの悪いメールサーバに出くわしたりすると、 結構時間がかかりますのでタイムアウトは3分以上にして ください。

       
      DNS ブラックリストの登録

      操作:[Menu][setting][Regsiter DNS Black List]

      この設定は、基本設定の [Verify IP address] がチェックされている場合 に有効です。

      DNS ブラックリストとは、スパムなメールを送信する IP アドレス が登録された  DNS  サーバです。世界中にたくさんあります。 Blueberry USO Mark2 はメールに含まれる IPアドレスを使って このサーバを参照しスパム判定の材料にする事ができます。

      ここでは、その  DNS サーバを登録します。意味が分からなかったり、 面倒な場合はデフォルトの状態にして下さい。


        

      • DNS

          DNSサーバの名前を設定します。デフォルトでは3っつの サーバが登録されていますが、これを変更したい場合や、新しく 追加したい場合は、 List of All Known DNS-based Spam Databasesが参考になります。

      • Answer

          問い合わせたIPアドレスが、サーバに登録されている場合は、なんらかの 返答があり、一般的には217.0.0.2が返されます。ただし、これはサーバによって は別の返答をする場合があります。Blueberry USO は、ここに設定された内容が 返答と同じ場合にリストされているとみなします。 ただ、いずれにせよ登録されている事には間違いないので、どんな返答が帰ってきても 良いようにしたい場合はワイルドカード * が利用できます。

        テストしたIPアドレスがブラックリストに載っているからといって、そのメールはすぐに スパムメールと判定される訳ではありません。この事がスパム確率計算の一要素となり、 他の事象と含めて総合判定されます。




      WebMail プロキシーの設定
      操作: [Menu] -> [Settings]-> [WebMail Proxy Setting]

      WebMail (Hotmail や Yahoo)を POP3 でアクセスする為の Proxy (例えば、BBUSO の姉妹品 BBHOT やBBSMTP) を導入している場合に設定します。ここで設定しておくと、ユーザーIDがだらだらと 長くなったり、何がなんだか分からなくなったりするのを防げます。

      • Enable WebMail Proxy

          この設定を有効にします。

      • Server

          WebMail Proxy のインストールされているサーバの名前です。 通常は  localhost または  127.0.0.1  です。

      • Port#

          WebMail Proxy の待ちうけポート番号です。

      • メーラ側の設定

          基本的な部分は先の「基本的な設定」で説明した「メーラ側の設定」と 同じですが、ユーザーIDとパスワードの設定は、WebMail Proxy の指定する 方法と同じにします。同じにしますが、ユーザーIDの最後に :HTTP (大文字でも小文字でもOK)を付け加えてください。

          (例)

          Blueberry HOT を通して Hotmail にアクセスする場合の私のユーザーIDの 設定は

          ayanoakira@hotmail.com:http

          になります。

        POP プロキシーの設定
        操作: [Menu] -> [Settings]-> [POP Proxy Setting]

        Bleuberry USO Mark2 のさらに下に、POP アクセスの為の Proxy を 使用する場合に、設定がややこしくならないように、POP Proxy の設定機能があります。

        • Enable POP Proxy

            この設定を有効にします。

        • Server

            POP Proxy のインストールされているサーバの名前です。 通常は  localhost または  127.0.0.1  とおもいます。

        • Port#

            POP Proxy の待ちうけポート番号です。

        • メーラ側の設定

            基本的な部分は先の「基本的な設定」で説明した「メーラ側の設定」と 同じですが、ユーザーIDとパスワードの設定は、POP Proxy の指定する 方法と同じにします。同じにしますが、ユーザーIDの最後に :POP (大文字でも小文字でもOK)を付け加えてください。

            (例)

            ayanoakira@pop.proxy.com:pop

            になります。

          TELNET プロキシーの設定
          操作: [Menu] -> [Settings]-> [Telnet Proxy Setting]

          ファイアウオールに囲まれている時に、 TELNET プロキシーが解放 されていれば、外部のメールサーバに TELNET 経由で接続できます。

          • Enable Telnext Proxy

              この設定を有効にします。

          • Server

              TELNET サーバの名前です。

          • Port#

              TELNET サーバのポート番号です。

          • How to ...

              リモートサーバへの接続方法です。 %sはリモートサーバの名前 %dはポート番号に置き換えられます。

            スーパーメールアドレスの登録

            操作

            [menu][setting][Regsiter Super Addresses]

              

            スパムチェックを一切行わない送信アドレスを登録する事ができます。 このメールアドレスから送られたメールは完全に安全とみなします。

            メールアドレスの記入方法は次の通りです。

            • フルアドレスで記入

              mailbox@domian

                この場合はメールアドレスが完全に一致した場合に登録されていると 判定されます。

            • メールボックスで記入

              mailbox@

                この場合はメールアドレスのメールボックス部分が一致した場合に登録されていると 判定されます。

            • ドメインで記入

              domain

                この場合はメールアドレスのドメイン部分が一致した場合に登録されていると 判定されます。

            コメントを付け加えたい場合はメールアドレスの後に半角スペースをひとつおいて、 その後ろにコメントを書いてください。

             
            データベースについて

            メールを受信する度にそのメールに含まれる単語がデータベースに蓄積されていくのですが、 このままだと、おそろしく大きなデータベースになります。(蓄積されるのは日本語だけではないので)

            これを回避する為に、ある任意の単語に出会った回数が5回以下で、かつ、7日以上その単語に出会う事が なかった単語はデータベースから自動的に削除される仕様になっています。

            データベースのバックアップ

            データベースのバックアップは日毎に作成され、作成日から7日を過ぎると削除されます。


            Download

            このソフトウエアは50アメリカドル(おおよそ5,500円)のシェアウエアです。 3週間はユーザー登録無しで試用する事ができます。

            ユーザー登録は、こちらをご利用ください。

            Blueberry USO Mark2 1.3.0.3

            更新履歴

            • 2006/09/25   v1.3.0.3
              • インストーラの改善とこれに伴う超マイナーな内部仕様の変更
            • 2006/07/27   v1.3.0.2
              • インストーラの改善
            • 2006/06/16   v1.3.0.1
              • プログラムをサーバモジュールとメンテナンスモジュールに分離

                サーバモジュールは常にサービスとして起動されるように し独立させたので、メンテナンスモジュール (Blueberru USO Mark2 マネージャ)は必要な時だけ起動すれば よくなった。

              • インストーラとアンインストーラを付けた。

                プログラムがサーバモジュールとメンテナンスモジュールに分離 され、インストール手順がすこし複雑になったので、インストーラ 及びアンインストーラを付けた。

            • 2006/05/27   v1.2.0.2
              • 日本語形態素解析(MeCab)を使った処理に問題があった。
            • 2006/05/08   v1.2.0.1
              • MeCab の幅広いバージョンに対応できるように改善
              • NULL を含むメールが受信出来ない事への対応
              • ユーザーインターフェースの日本語化
            • 2005/02/20   v1.1.3.7
              • Pop over SSLに対応
              • ソケットからの受信を改善
            • 2004/08/27   v1.0.3.7
              • CPU 使用効率の改善
            • 2004/08/19   v1.0.3.6
              • akira22++ との連携機能を追加。
              • ウインドウサイズと位置の復元に問題があった。
            • 2004/08/06   v1.0.3.3
              • BBUS2 の下に POPProxy を設定する場合に簡単に利用できるようにした。
              • ログイン処理の高速化のために APOP の自動判定に加え、明示的に APOP でのログインを指定するモードを新設
              • コンソールウインドウの位置とサイズを記憶するようにした。
              • 起動直後の受信でMeCab (形態素解析モジュール)が例外違反を起こす事があった。 リロードする事で解決
            • 2004/08/06   v1.0.3.2
              • APOP 対応において、エンバグがあり APOP 認証の POP サーバに 接続出来なくなっていた。
            • 2004/07/15   v1.0.3.1
              • スパムだけではなく複数のカテゴリに振り分けできるようになった。
              • UIの改善
            • 2004/07/13   v1.0.1.8
              • WebMail Proxy を自動的に立ち上げる機能を追加。
              • その他、なにかと改善。
            • 2004/07/13   v1.0.2.1
              • デザイン上使用してDLLの使用を中止(Win NTの為)
              • データベースのフォーマットが変更された。

                自動的に行うのでユーザーは意識する必要はない。

              • データベースの自動修復機能を追加
              • 確率計算方法を一部変更

                バージョンアップによって一時的にスパム判定能力が落ちる可能性 があるが、しばらくすると回復し前版より判定能力がアップする。

            • 2004/07/13   v1.0.2.2
              • Verify e-mail address が付いていないと、Verfy IP address が付いていても IP アドレスのチェックをしなかった。
              • 統計対象に charset と添付ファイルの名前も含める事にした。
            • 2004/07/12   v1.0.1.7
              • メールアドレスの真贋も確率計算に含めることにした(オプション)
              • DNSBL に登録されているかどうかも確率計算に含めることにした(オプション)
              • データベースのバックアップを作成するようにした。
              • その他、なにかと改善。
            • 2004/07/10   v1.0.1.6
              • 日本語処理に形態素解析を導入する事が出来るようになった。
              • その他、なにかと改善。
            • 2004/07/08   v1.0.1.5
              • プログラム実行中にデータベースをファイルに書き出す機能を 追加。(Menu->Tool->Flush Database)
              • スパムメールの取り扱いを添付にするか、何もしないかを選べるようになった。
              • スパムに比重がかかる計算ミスがあった。
            • 2004/07/07   v1.0.1.3
              • BBHOT,BBSMTP との連携が楽になる WebMail Proxy bSetting が 追加されました。
            • 2004/07/07   v1.0.1.2
              • From はそのアドレスをデータベースに登録していたが、 これに加えて、ドメイン部分のみも登録する事にした。
            • 2004/07/05  1.0.0.1
              • リリース開始

            Contact me

            ayano-akira@violet.plala.or.jp
            khf07113@mnet.ne.jp

            Home

            AyanoAkira