Category
.
About
PC
Solaris
blosxom
cat
flavours
foods
liquors
misc
moblog
travel
travel/France-Germany_2003
travel/Hawaii_2002
travel/Hungary-Germany_2005
Entry ID
Title
Body
meta-creation_date: 10/30/2004 04:30:00 最近一日平均10通以上のspamを受け取って(無理矢理送りつけられて)います。これまでは<a href="http://www.nakka.com/soft/npop/" target="_blank">nPOP</a>を用いて手作業で削除していたのですが、自分で分類するのもいい加減面倒くさくなってきました。そこで、サーバーにSpamAssassinとprocmailを導入してフィルタリングをすることにしました。以下その作業メモ。 <!-- more --> <ol> <li>SpamAssassin のインストール <pre> # perl -MCPAN -e shell </pre> で CPAN モジュールを起動し、 <pre> cpan> install Mail::SpamAssassin </pre> でインストール完了です。</li> <li>procmail のインストール <br /> まずはソースを ring から入手。 <ul> <li><a href="ftp://ftp.ring.gr.jp/pub/net/mail/procmail/procmail-3.22.tar.gz" target="_blank">ftp://ftp.ring.gr.jp/pub/net/mail/procmail/procmail-3.22.tar.gz</a></li> </ul> こちらには configure スクリプトは付いていないので、Makefile を手で編集します。 といっても、4行目の <pre> BASENAME = /usr </pre> を <pre> BASENAME = <em>/opt/local</em> </pre> に変更しただけです。後は <pre> % gmake % su # gmake install </pre> で自動的にその環境を判別してコンパイル・インストールできます。 </li> <li>SpamAssassinのdaemon起動スクリプトを用意<br /> SpamAssassin はかなりリソースを使います。起動時のオーバーヘッドを 少しでも抑えるために、 SpamAssassin の daemon である spamd を 起動しておくことにします。 スクリプト<a href="/archive/spamassassin" target="_blank">spamassassin</a>を /etc/init.d/ に設置します。また、 <pre> /etc/rc0.d/K23spamassassin /etc/rc1.d/K23spamassassin /etc/rc2.d/K23spamassassin /etc/rc3.d/S21spamassassin /etc/rcS.d/K23spamassassin </pre> にシンボリックリンクを張っておきます。 </li> <li>.procmailrcと.forwardを作成<br /> <a href="/archive/procmailrc" target="_blank">procmailrc</a>をユーザーのホームディレクトリに .procmailrc としておきます。また、来たメールをprocmailに渡すため、.forwardに <pre> "|IFS=' ' && exec /opt/local/bin/procmail -f- || exit 75 #<em>username</em>" </pre> と書きます。ここで赤字のusernameはそのユーザーの名前に合わせます。 これで SpamAssassin の判定結果によって Mail/doubt や Mail/spam にメールがたまるようになります。 </li> <li>メールをSpamAssassinに通してみる<br /> この段階で一通メールをそのユーザに出してみます。このとき、ホームディレクトリに.spamassassinというディレクトリが出来てその中にSpamAssassinが使うファイル一式が作られているはずです。その一つに設定ファイルuser_prefsがあるはずですが、<a href="http://tlec.linux.or.jp/" target="_blank">TLEC</a>に優秀な設定ファイル<a href="http://tlec.linux.or.jp/docs/user_prefs" target="_blank">user_prefs</a>があるので、それに変更します。 ここまで出来上がったら、さきほどの .procmailrc の9行目と10行目を以下のように編集します。 <pre> #| /opt/local/perl/bin/spamassassin -P | /opt/local/perl/bin/spamc -U /var/run/spamd/spamd.sock </pre> これで出来上がりです。あとは sa-learn を使ってSpamAssassinを鍛え上げると、spamかどうか判定する精度が上がっていきます。</li> </ol>
File
Password
preserve_lastmodified