POPFile で SPAM 撃退
最近 SPAM が多くなってきたのでサクっと振り分けるために POPFile を Plamo Linux 4.0rc1 にをインストールしてみました。
POPFile の入手はこちらからどうぞ。
http://popfile.sourceforge.net/cgi-bin/wiki.pl
ベイジアン型 SPAM フィルタです。
SPAM のタイプを覚えていって振り分けてくれるというナイスな奴で、怪しいメールの怪しいファイルを添付ファイルに変換して包んでくれる機能もあるのでウイルスの実行を防げます。
Plamo Linux 4.0rc1 の Perl は 5.8.4 なのでモジュールを追加してやれば簡単に動きます。
Perl 関連で色々いるみたいなのでインストール。 以下のサイトから必要なモジュールを探して入れるだけ。
モジュールのインストール方法は以下の通りです。
JP HowTos/AllPlatformsRequirePerlを参照のこと。
$ perl Makefile.PL $ make # make install (checkinstall という手もあります)
インストールしたモジュールは以下の通り。
ディレクトリを作って単にアーカイブを展開するだけなので楽。
# make /usr/local/popfile # unzip popfile-0.22.0.zip -d /usr/local/popfile
あと実行可能にしとく必要があったっけ。
# chmod +x /usr/local/popfile/popfile.pl
以下のようなスクリプトを作って /etc/rc.d/init.d に popfile という名前で置く。
#!/bin/bash
# Sample init.d/script to show how to start popfile
# automatically during regular Redhat Linux 7.3 boot
# Should also work for other versions of Linux
# Change the line below to reflect the location of
# popfile.pl on your system
popfilelocation=/usr/local/popfile/popfile.pl
# You may want to do a "ls -l /bin/basename" and
# a "ls -l /usr/bin/dirname" to confirm that you
# have the two utilities on your linux system
prog=`/usr/bin/basename $popfilelocation`
dir=`/usr/bin/dirname $popfilelocation`
case "$1" in
start)
echo "Starting POPFile service."
cd $dir
./$prog >> /dev/null 2>&1 &
;;
stop)
echo "Shutting down POPFile service."
pid=`ps -ef | grep "perl \./popfile\.pl" | gawk '{print $2}'`
kill $pid
;;
*)
echo $"Usage: $0 {start|stop}"
exit 1
;;
esac
exit 0
当然ながら chmod で実行可能の状態にしておく。
# chmod +x popfile
スクリプトの内容は http://www.dslreports.com/forum/remark,9584163~mode=flat を使わせてもらいました。
Sylpeed を使ってますが他のクライアントも設定を変更する点は同じです。
受信サーバの設定を 127.0.0.1 に変更します。
そしてユーザ名は本来使うメールサーバ:ユーザ名にします。
http://popfile.sourceforge.net/manual/jp/email.html
作成した起動スクリプトから起動します。
# /etc/rc.d/init.d/popfile start
Web ブラウザから http://127.0.0.1:8080/ にアクセスします。
POPFile の設定ページが表示されたら起動成功です。
ここら辺は Web 上に沢山情報があるので割愛。
メールクライアントの設定をしっかりしているのにメールが受信できない場合は Perl のモジュールが足りないのかも。
上記のスクリプトからではなくて端末エミュレータ(xterm,kterm,rxvt,etc...) から POPFile を起動して、受信作業時に表示されるエラーメッセージを確かめて足りないモジュールを CPAN からもらってきてインストールしましょう。