Feb 262006
 

maildrop設定

bogofilterbsfiltermaildropと組み合わせて使う場合の設定内容です。

bogofilterの場合

bogofilterをmaildropと使う方法については、maildrop 利用メモ or tips?に詳しい情報があります。
bogofilterは日本語が通らないので、kakasiなどでわかち書きしてから判定させます。

~/.mailfilter設定

BOGORESULT=`nkf -ZSme | kakasi -w | bogofilter -epu \
  | reformail -X'X-Bogosity:'`

xfilter "reformail -i'${BOGORESULT}'"

if (/^X-Bogosity: Yes/:h)
  to "$MAILDIR/.Spam/"

ややこしいですが、最初にkakasiでわかち書きしたメールをbogofilterに判定させて結果のヘッダ値のみを取り出し、それをxfilterでインサートしていることになります。
xfilterでnkf、kakasi、bogofilterを指定すると、わかち書きされたメールが届いて悲しい思いをしますのでご注意ください。

bsfilterの場合

bogofilterと違ってbsfilterはそのままで日本語が通りますので、xfilterに直接指定できます。

~/.mailfilter設定

MAILDIR=".maildir"
DEFAULT="$MAILDIR/"

xfilter "bsfilter --auto-update --pipe --insert-flag --insert-probability"

if (/^X-Spam-Flag: Yes/:h)
  to "$MAILDIR/.Spam/"

WanderlustからのSpamFilter利用

Wanderlustではwl-spamという外部spamフィルタプログラムへのフロントエンドを提供されています。
Meadow上のWanderlustでもssh経由(PuTTYのplinkコマンド)で利用することができます。

以下は~/.wlでの指定です。

bogofilterの場合

bogofilterを使うときは以下のようなwrapperスクリプトを用意しておいて、プログラムに指定しています。
/usr/local/bin/bogowrapper

#!/bin/sh
nkf -ZSme | kakasi -w | bogofilter $@

~/.wl設定

(require 'wl-spam)
(setq elmo-spam-scheme 'bogofilter)
(setq elmo-spam-bogofilter-program "C:/PuTTY/PLINK.EXE")
(setq elmo-spam-bogofilter-args '("server.example.com"
                                  "/usr/local/bin/bogowrapper")
(add-to-list 'elmo-spam-header-good-alist '("X-Bogosity" . "No"))
(add-to-list 'elmo-spam-header-spam-alist '("X-Bogosity" . "Yes"))

elmo-spam-header-{good,spam}-alistは、初期値がX-Spam-FlagになっているのでbogofilterにあわせてX-Bogosityを追加しています。

bsfilterの場合

~/.wl

(require 'wl-spam)
(setq elmo-spam-scheme 'bsfilter)
(setq elmo-spam-bsfilter-shell-program "C:/PuTTY/PLINK.EXE")
(setq elmo-spam-bsfilter-shell-switch "server.example.com")
(setq elmo-spam-bsfilter-program "bsfilter")

参考

Wanderlust 日本語マニュアル – 12. Spam フィルタ
Wanderlust FAQ 日本語版 – 設定編 – SpamAssassin をリモートで使いたい

学習方法

bogofilter

Bogofilter FAQHow do I start my bogofilter training?にいくつか方法が紹介されています。

そのうちMethod 2のbogominitrain.plを使う方法についてはLinux とりわけ Debian GNU/Linuxが参考になります。

Bogofilter FAQの通りに実行してみます。

$ /usr/share/bogofilter/contrib/bogominitrain.pl \
> -fnv ~/.bogofilter mbox.good mbox.spam '-o 0.9,0,3'

Starting with this database:
                                 spam   good
.MSG_COUNT                       5535 108403

H -- Training spam message 8.
H -- Training spam message 10.
H -- Training spam message 27.

End of run #1 (in 2782s):
Read 204 ham mails and 53 spam mails.
Added 0 ham mails and 3 spam mails to the database.
                                 spam   good
.MSG_COUNT                       5538 108420

False negatives: 0

Sorry, the comment form is closed at this time.