最近、私のところには一日あたり十数件のスパムメールが届きます。
十数という数は、それなりには多いですが、全部ぜんぶチェックできないほど多い量ではありません。
そこで、私は、有効なメール(知り合いからのメールや、Amazonからの受注メールなど)は、送信元メールアドレスで判別して(メーラーの機能で)絞込み、すぐに読むようにしています。
そうでないメールは、何日かに一度全部チェックしています。大抵の場合、全てスパムですが、たまに私のサイトに関する感想や質問が混ざっているときがあります。これは取り逃したくないので、全部チェックしているのです。
メールの方はそんな状況なので、私にメールを送っても、数日間放っておかれることがあります。ご注意下さい。
このサイトのコメントはRSSリーダーでチェックしているので、こちらでしたら一日以内に確認できます。お急ぎの場合はこちらでどうぞ。返事が返せるかどうかは分かりませんが。
しかし・・・。
BLOGへのコメントスパムは、今のところフィルタリングが容易なものばかりなので簡単に取り除けますが、これもいつかは今のメールのようにスパムコメントで溢れかえって使い物にならなくなるんでしょうね。
どうかそうなる日が少しでも遅くなりますように。
bsfilterに乗り換えました~。
.procmailrc
:0fw
| /usr/local/bin/bsfilter --pipe --insert-flag --insert-probability
:0
* ^X-Spam-Flag: Yes
$MAILDIR/.spam3/new
こんな感じで
判定が間違っていたら
#スパムじゃないのにスパム判定されたメールは
bsf.spam2cl
#スパムなのに判別できなかったメールは
bsf.cl2spam
に移動させて~
#!/bin/sh
bsfilter -c ~/Maildir/.bsf.spam2cl/cur/*
bsfilter -s ~/Maildir/.bsf.cl2spam/cur/*
bsfilter -u
mv ./Maildir/.bsf.spam2cl/cur/* ./Maildir/cur/
mv ./Maildir/.bsf.cl2spam/cur/* ./Maildir/.spam2/cur/
こんなシェルスクリプトをCronで動かしてます~♪
:0
* ! ^Message-Id:
$MAILDIR/.spam2/new
:0
* ^X-Mailer:.*(jpfree Group Mail Express|EVAMAIL|Foxmail|JiXing mailer|\
007 Direct Email Easy|Easy DM free|mPOP Web-Mail|IM2001)
$MAILDIR/.spam2/new
spam2送りのルールはこんな感じです
メッセージIDが無かったり、メーラーがスパムツール特有のものだった場合にspam2ディレクトリに投げ込みます。
spam1は手動で投げ込んで早朝にcronで学習させるためのスパム専用ゴミ箱です。
わたしの場合は削除じゃなくてIMAP上のspam3ディレクトリへの振り分けを行っています~。
:0
* ^To:
| /usr/local/bin/bogofilter -sl -c ~/.bogofilter.cf
# 囮アドレス宛に来たメールはスパムとして自動登録。
:0fw: bogofilter.lock
| /usr/local/bin/bogofilter -uepl -c ~/.bogofilter.cf
# スパムかどうか確認する
:0
* ^X-Bogosity: Spam
$MAILDIR/.spam3/new
# スパムだったらspam3ディレクトリに移動
この処理よりも上の段階で送信元などで振り分けを行っておけば、イロイロ便利です。
ネット喫茶などを利用する機会が多いですので、IMAP4+ProcMail+SQL+bogofilterはとっても便利です。
どこからでも整理されたメールボックスにアクセスできるのはかなり依存性高いですよ~
スパムフィルタ導入も考えたのですが、現状のスパムフィルタは、仕組み的に「削除してはならないメール」を削除してしまう確率が0にはならないと思います。ですので導入は止めました。私が手動でチェックできる限界を超えるまでは手動で行こうと思ってます。
どうしても学習が間に合わなかったものに関しては
http://www.shareedge.com/modules/shareware/view_shareware.php?lid=20040629-001
これを使うと、なかなか良い感じに排除できます。
でも、1通1通の送信元をDNSBL宛に問い合わせに行きますので
サーバー側であらかじめスパムをある程度ふるい落としてからでないと
結構通信量が多くて、敵に囲まれたときにメール処理が始まると死ねます。
サーバー側にスパムフィルタを設置して
スパムメールしか来ない囮メールアドレスをわざとメールアドレス収集ロボットに集めさせて
そのメールボックス宛に新着メールが届く毎に自動でベイジアン学習させれば
良い感じにそのフィルタ使ってスパムメール排除できますよ~。
わたしは
http://bogofilter.sourceforge.net/
これ使ってます~
http://www.fkimura.com/bogofilter2.html
このあたりが参考になります~