procmailrc を更新

久しぶりに procmail のレシピを書き換えたのでメモ.

この設定で

imapだけで読み,その他のメールはpop3でもimapでも読めるようにしてある.
つまり,

  • 個人宛の緊急を要するメールは pop3 で読んで,
  • 時間が空いたときにimapでのんびり未読メールを処理する

スタイルでメールを処理している.

LOGFILE=$HOME/procmail.log
DEFAULT=/var/spoll/mail/pyopyopyo

# "To:"行が "root@" で始まるメールは
# Maildir/.root/ 以下に保存

:0
* ^To: root@.*
/home/pyopyopyo/Maildir/.root/

# メーリングリストのメールは
# Maildir/.ml 以下に保存

:0 
* ^List-Id:.*
/home/pyopyopyo/Maildir/.ml/

:0
* ^Mailing-List:.*
/home/pyopyopyo/Maildir/.ml/

:0
* ^X-Ml-Name:.*
/home/pyopyopyo/Maildir/.ml/

# spam filter 
:0fw
| /usr/bin/spamassassin

# spam は Maildir/.spam へ転送
:0
* ^X-Spam-Flag: YES
/home/pyopyopyo/Maildir/.spam/


# 上記ルールに引っかからなかったメールのみ nobody@example.com へ転送
:0 c
! nobody@example.com

# 最終的に 
# DEFAULT で指定された場所へ メールは配送される.
# この例だと DEFAULT で指定されたファイルに mbox 形式で追記される.

spamassassin でのフィルタリングは,MLのメールには適用していない.これは,英語圏のMLで,かつoutlookユーザや中国の方が多いMLでは,spamassassinでのhamとspamの判定がまともに行えなかったため.