久しぶりに procmail のレシピを書き換えたのでメモ.
この設定で
- サーバの管理用アカウント
- メーリングリスト
は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の判定がまともに行えなかったため.