procmail

procmailは受信メールを振り分けるソフト

procmailの起動オプションが結構大事

設定ファイルは$HOME/.procmailrc
このrcfileがなくコマンドラインに-pが指定されていない場合は/etc/procmailrcが読まれる

qmail+vpopmail環境下

qmail+vpopmail環境下では振り分け対象ユーザのディレクトリに.qmailファイルと.procmailrcファイルを作成

.qmailファイルの内容
 | /usr/bin/procmail -m ./.procmailrc

.procmailrcの内容
 PATH=/usr/bin:/bin:/usr/local/bin
 HOME=/home/vpopmail/domains/hogedom/hogeuser
 MAILDIR=$HOME/Maildir
 DEFAULT=$HOME/Maildir/
 LOGFILE=/var/log/procmail/hogeuser.log
 LOCKFILE=$MAILDIR/procmail.lock
 WHITELIST=$HOME/whitelist

 :0Hw:
 * $ test -s $WHITELIST
 * $ (formail -x From: -x Reply-To: -x Sender: -x From | fgrep -v -iqf $WHITELIST)
 $MAILDIR/.spam/
上記例はwhitelistファイルを作成し、ファイルに記載されているメールアドレス文字列が
ヘッダのFrom、Reply-To、Senderに存在していなかったら.spamディレクトリに配送するレシピ

fgrepの-vオプションを取り除けばblasklistとして利用可能

procmailのレシピは多様に記述が可能でコマンド戻り値を利用して制御できる

レシピを設定する際にはVERBOSE=ONを記載しておけば、ログファイルに詳細な情報が表示される
テストを行う場合には必須オプションです