しにふぃえの雑記、或いはネタ。
2004-08-07 SpamAssassin様が見てる
■ SPAM対策について友人の日記でつっこみを入れたので、ちょっと補完
※うちはSpamAssassinを使ってますが、無論これ以外にも色々あるので、googleとかで調べてみるのも良いでしょう(苦笑)
■ 先ず、うちの今の環境を示すと
ISP-----[fetchmail]--[procmail]--[qpoper]-----[client]↓↑
[SpamAssassin]
といった感じになっており、この内のfetchmailからqpoperまでの行程をサーバ上で行ってます。
動作を順序立てて書くと、先ずプロバイダ(ISP)からfetchmailがメールを取ってきてprocmailに渡して、渡させたprocmailは一旦spamassasinにメールを渡します。
SpamAssassinはメールをSPAMの特徴を基に点数評価(例えば特定の単語が入っていれば+1点であるとか、htmlメールであれば+1点であるとか)し、この合計点が予め定めた値を超えていれば、SPAMであると判断します。
無論、ネット上で公開されているフィルタ(ブラック)リストを参照する設定もあるのですが、何故かcompile中にエラーが出るので、うちでは使用しておりません(^^;
そして、SPAMであると判断された場合は、メールヘッダにX-Spam-Flag: YES というflagを立て、メール本文を添付ファイル化して、本文にSPAM判定と本来のメールの冒頭部分を抜粋記述した後に、procmailに返します。
(spamと判断されない場合は、NOのFlagを立てる以外は特に何もしないです)
procmailはこれらの後に、ローカルのメールサーバとして動作しているqpoper(qmail)へメールを渡すので、後はclientからqmailへアクセスして取り出せばOK
このようにSpamAssassinがやってくれるのは、判断と印(Flag)付けだけです。
市販されているツールみたいにVirusをcutしたり、SPAMそのものを削除したりはしないので、 そのあたりはメールを受け取るclient側で行うことになります。
具体的には、メールソフトにある振り分け機能でSPAM-Flagが立っているメールを特定のフォルダ (まあ、ゴミ箱でも良いのですが)へ振り分けるのが妥当な線だと思います。
無論、procmailの設定でSPAM-Flagが立ってるメールを削除することも可能なのですが、これは 機械処理による誤判断の可能性を排除出来ないので、お勧め出来ません。
実際の運用では、企業からの(有用な)メールなどがSPAMと判断される例が希にありますので、 SPAM用のフォルダを作り、SPAMと判断されたメールは一度そのフォルダに入れて、その後に削除 するのが妥当な運用かもしれません。
この運用が出来る条件として、local(net)に配信用のメールサーバが在ることが条件になるのですが、 OSX(Macintosh)なら、それ自身の上でメールサーバを走らせて自分に配信する方法で実現出来るかも?
まあ、これ用にlocalに汎用サーバを立てるのも色々と役に立つかも?
サーバが手元にあると色々と利用価値がありますよ(笑)
なお、SpamAssassinは結構重いので、そこそこのCPUを積んでいる計算機じゃないと荷が重いかもしれません。
まあ、うちのalto(P3-866MHz RAM:512MB)で問題ないので、そんな感じですが(^^;;
[ツッコミを入れる]