メールサーバの移転処理があったので、ついでに IMAP 化をしてみようといろいろ設定してみました。
まずは移転先に qmail やら vpopmail, daemontools, ezmlm-idx といったおなじみの djbware + inter7 ソフトを突っ込む。受け入れ先の設定がおわったら MX を切り替えて、伝播するまでの間古いほうにきちゃう分は smtproutes で新サーバにとばしてやれば OK。
これで普通に POP3 + POP before SMTP で受信・送信ができる環境ができたので IMAP サーバをいろいろ試す。といっても vpopmail で Maildir にしている以上、Courier-IMAP 以外にほとんど選択肢はないわけですが。
とりあえず configure して立ち上げれば普通に IMAP で動作して、Becky! から IMAP で接続もできたし、satoru さんの mobileimap で出先から携帯でチェックも簡単にできそう。ということで、とりあえずWinでは POP3 で3日残す設定、外からは mobileimap で見るという部分的な IMAP 化で現状は満足。
あとの問題は SPAM フィルタだけでしょうか。ベイジアン系のツールを使いたいので現在は POP3 で POPFile を Win32 でプロキシとして使用しています。vpopmail でこうしたベイジアン系ツールを使用するには、普通に .qmail に procmail を仕込んで bogofilter などでフィルタする か、bsfilter (IMAP) のように、定期的に IMAP で接続して、SPAM 判定したらフォルダを移動させる、という2つの方法があるようです。
bogofilter や bsfilter では、誤判定したときに教えなおすためにコマンドラインを使用する必要があると思うのでそれだけが厄介。POPFile ではメールのヘッダに書いてある URL をクリックして Web ブラウザで設定できたので。。POPFile にも IMAP サポート が実験的に入っているようですが、これは Win32 側で定期的に IMAP 接続するという bsfilter 式。リモートのサーバを Win32 で動作しているデーモンで設定するのがどうもダサいような。。。
bsfilter か bogofilter の誤判定を Web からたたけるようにラッパーをつくるのがいいのでしょうかねー。何かいい方法があれば教えてくださいませ。
以前こんなことやっていました。
http://as-is.net/blog/archives/000804.html