2006年11月05日
川俣晶の縁側ソフトウェア技術雑記 total 3301 count

ささやかなspamへの抵抗・procmailrcスクリプト追加処理の自動化

Written By: 川俣 晶連絡先

 spamの奔流は止まるこどを知らず、もう飽和状態だろう……と思っていたのに更に増えています。

 たぶん、私が受け取るspamの総量はコンスタントに月3万通を超えたと思います (複数アカウントの総計)。

 これまでは、サーバ側に仕込んだprocmailの設定ファイル(.procmailrc)によるホワイトリスト判定と、クライアント側の学習型フィルタ(WinBiffのspamフィルタ)の2段がまえで処理していました。

 しかし、この構成は2つの点で問題を露呈しつつありました。

  • spamが増えすぎてWinBiffのspamフィルタの検出精度が落ちてきた
  • .procmailrcの書き換えが面倒で難しい。しかも書き間違えると致命的な問題を引きおこしかねない

 実際、.procmailrcの書き換えは面倒すぎて滅多に行われていないのが現状です。

 そのツケを、全てWinBiffのspamフィルタに押し付けていたことになります。

 最初のうちはそれでも良かったのですが、今はもう厳しい状況です。

 これはまずい! ということでツールを作りました。

 .procmailrcに、特定のFromアドレスのメールを、特定のアドレスに転送する設定をGUIベースで追加するツール(procmailman)です。

procmailman

機能概要 §

 メールアドレスを入力して、Send Toの送り先を選んで、Addボタンを押すとローカル側の設定ファイルに書き込まれます。

 そして、Pubishボタンを押すと、ftpでサーバに送り込まれます。その際、EUC-JPへの変換と改行コードの\nへの置き換えも実行します。また、それ以前のファイルはバックアップファイルとして残しておきます。

 一番下のEditボタンは直接ローカル側の設定ファイルをテキストエディタで開く機能です。追加以外の処理はテキストエディタを使わねばなりません。

 プログラム本体は、.NET Framework 2.0ベースの普通のWindowsアプリケーションです。

時間がないから公開はしないが…… §

 プログラムそのものは以下の理由から公開しません。

  • procmailユーザーはおそらく少ないこと
  • 更に、それに該当しつつWindowsを愛用している人はもっと少ないと思われること
  • 更に、それらに該当しつつC#のソースをいじれる人はもっともっと少ないと思われること (様々な設定がハードコードされていて、ソースを直す必要がある)
  • 私の時間がない

 しかし、隠すような代物でもないので、万一自分も欲しいという人が多ければ公開するかもしれません。