メイル環境の整備
"postfix + courier-imap +
fetchmail + procmail + bsfilter + wanderlust"
前説
Spamの増加や、PC及びユーザーの増加(PC6台の小規模LANですが、、、)
に伴いメイル環境の整備をしました。 従来の環境と大きく違ったのは courier-imap
の導入と Spam のフィルターに bsfilter を採用したことです。
以下は導入作業の要点メモです。
環境
サーバー Vine-Linux-2.6r4
クライアント Debian/GNU Linux(testing) WindowsXP Windows2000など
以下Vine-Linux-2.6r4 を前提に説明します。
1.postfix
courier-imap は qmail の Maildir 形式しかサポートしないようなので、
/etc/postfix/main.cf を編集します。
オプション home_mailbox を以下のようにしてします。末尾の"/" は必須です。
home_mailbox = Maildir/
オプション mail_spool_directory が指定されていたらコメントアウトするか
削除してください。
# mail_spool_directory = /var/mail
# mail_spool_directory = /var/spool/mail
postfix を再起動します。
# /etc/init.d/postfix restart
postfix の設定は以上で終わりです。
2.courier-imap
courier-imap は Vine 標準の imap と conflict します。imap を uninstall します。
courier-imap は VinePlus にあります。必要に応じて /etc/apt/source.list を編集
してください。
# apt-get remove imap あるいは # rpm -e imap
courier-imap を install します。
# apt-get install courier-imap
一般ユーザーで ~/Maildir を作成します。
$ maildirmake ~/Maildir
#
/usr/sbin/maildirmake は
courier-imap
に含まれるコマンドです。
必要に応じて directory を追加してください。
* Example
$ maildirmake ~/Maildir/.test
# Maildir/
以下のdirectry には先頭に
ピリオドをつけるようです。(推測)
3.fetchmail
fetchmail は標準でインストールされているはずです。
fetchmail を使用する必要がある場合は 各ユーザーの ~/.fetchmailrc
を適宜設定してください。
今回は bsfilter procmail と連携したメイル環境を構築しますので
~/.fetchmailrc の中で mda に procmail を指定してください。
$cat ~/.fetchmailrc
set postmaster "user-name"
set bouncemail
set no spambounce
set properties ""
poll smtp.server.name with proto
POP3
user 'user-name'
there with password 'PASSWORD' is 'user-neme' here options stripcr
mda '/usr/bin/procmail -d
%T' # <= ここ
4.procmail
procmail も標準でインストールされているはずです。
~/.forward を作成して、以下の内容を記述します。
"|IFS=' ' && exec /usr/bin/procmail -f- ||
exit 75#USERNAME"
ダブルクォーテーションも含めて記述してください。postfix が受け取ったメイルを
procmail に処理させるためのおまじないです。
~/.procmailrc を編集します。
$ cat ~/.procmailrc
# Please check if all the paths in PATH are
reachable, remove the ones that
# are not.
PATH=$HOME/bin:/usr/bin:/usr/ucb:/bin:/usr/local/bin:.
MAILDIR=$HOME/Maildir
# courier-imap の為の設定
DEFAULT=$MAILDIR/
LOGFILE=$MAILDIR/from
LOCKFILE=$HOME/.lockmail
:0 HB:
# bsfilter に判定させるための設定
* ? /usr/local/bin/bsfilter -a
$MAILDIR/.spam/
# spam と判定したらこの directory へ
後は適宜振り分けの設定などを記述してください。
5.bsfilter
bsfilter は Vine には含まれません。各自インストールする必要があります。
http://bsfilter.org/
へアクセスしてインストールしてください。詳しい説明もありますので一通り目を通して
おくといいと思います。
データベースとなる spam のサンプルは
http://www.flcl.org/~yoh/spam9xxxx.tar.gz
に linux-users メイリングリストの spam を集めたものがありますので利用すると
いいと思います。
6.wanderlust
MUA には xemacs + wanderlust を使用してみました。
特に変わった設定は必要なく、 ~/.wl を適宜編集してください。
ただし、~/.folders の設定がちょっとわからなくて悩みましたが、
%/
と記述しておけば、imap のフォルダーにアクセスできます。
また、フォルダーを追加しても表示されない場合があるようです。
その場合は ~/.elmo/folder/%/flist を編集すればよいようです。
* Example
$ cat ~/.elmo/folders/%/fliset
(("%INBOX" "%INBOX.Vine" "%INBOX.linux"
"%INBOX.Debian" "%INBOX.spam") nil)
以上の環境で快適にメイルしてます。
Return to Home