実はそんなに「迷惑メール」や「SPAM(スパム)メール」にはそんなに困っていないのですが、試しに bsfilter 1.0.6 を courier-imap / Debian Linux 3.0 Woody の環境にインストールしてみました。
- 実はすでに GmailやMozilla Thunderbirdの「Report Spam」や「迷惑メールフィルタ」機能で対応できているので、必要はなかったのですが。
- 同様の機能で著名な「POPFile」は私の環境がIMAPなのでパス。
インストールはLinuxの場合、解凍後 bsfilter ファイルをパスの通ったディレクトリ(/usr/local/bin など)に置くだけ。
(05/04/25追加:debパッケージでも bsfilter は登録されているのですが、バージョンが 1.0.2 と古いのです。)
が、procmail で「スパムメール」が振り分けされず、そのまま通常の受信メールボックスに入ってしまう。
~/.procmailrc は以下の通り
PATH=$HOME/bin:/usr/bin:/bin:/usr/local/bin:.
MAILDIR=$HOME/Maildir/ # You'd better make sure it exists
DEFAULT=$MAILDIR/
LOGFILE=$MAILDIR/procmail.log
LOCKFILE=$HOME/.lockmail
:0 fw # bsfilter
|/usr/local/bin/bsfilter --pipe --insert-flag --insert-probability
:0:
* ^X-Spam-Flag: YES
$MAIDIR/.Trash/
procmailからのbsfilter はちゃんと動作していて、以下のようにメールのヘッダに「X-Spam-Flag: Yes」、またスパムメールである確率の「X-Spam-Probability:」を設定をしてくれているので、procmailの設定ファイルのスパムメールをcourier-imap のディレクトリに振り分ける際の記述がおかしい様子。
X-Spam-Flag: Yes
X-Spam-Probability: 1.000000
私がprocmail のレシピ自体にまだ詳しくはないので、宿題。
4/3追記
とりあえず、詳細なログを取るため、VERBOSE=on と~/.procmailrc に追加してみることにする。
※参考:Procmailの活用メモ [FreeBSD](fkimura.com) http://www.fkimura.com/procmail1.html
4/3追記:解決
原因は不明ですが、ちょっと~/.procmailrc をいじったら「No Match」と判定されていた「X-Spam-Flag: Yes」に Match するようになり、スパムメールも振り分けされるようになりました。以下、~/.procmailrc。大文字・小文字の違いはデフォルトでは無視される筈。
PATH=$HOME/bin:/usr/bin:/bin:/usr/local/bin:.
MAILDIR=$HOME/Maildir/ # You'd better make sure it exists
DEFAULT=$MAILDIR/
LOGFILE=$MAILDIR/procmail.log
LOCKFILE=$HOME/.lockmail
VERBOSE=on
:0 fw # bsfilter
|/usr/local/bin/bsfilter --pipe --insert-flag --insert-probability
:0
* ^X-Spam-Flag: Yes
$MAILDIR/.Trash/
以上。
■参考:
bsfilter / bayesian spam filter / ベイジアン スパム フィルタ
http://bsfilter.org/
てーげー通信:でびあん
http://blog.goo.ne.jp/tori0707/e/804be009e4129b64b8b7289b8c8b5de8
[FreeBSD 5.3/i386 note] courier-imap 4.0.1 ~ [9/18] IMAP bsfilter
http://sakura.take-labo.jp/freebsd/mail_imap_imap_bs.html