- Linux
- 2012-02-13 - 更新:2012-11-01
この記事は最終更新日から1年以上経過しています。
レシピを共有化できないかと模索していたら、見つかったので記しておきます。
適当なディレクトリ(ここではetc)に共有するレシピを作成します。
#/etc/procmailrc #環境変数の設定 PATH=/usr/bin:/usr/local/bin MAILDIR=$HOME/Maildir DEFAULT=$HOME/Maildir/ #LOGFILE=$MAILDIR/procmail.log #省略するとログを記録しない LOCKFILE=$MAILDIR/procmail.lock #空のヘッダーを削除 :0Hfw | formail -z #日本語メールのみ受け付ける :0Hfw * ! ^Content-Type: .*(iso-2022-jp|multipart/mixed;) * ! ^Subject: .*(iso-2022-jp|utf-8|euc-jp|shift_jis) * ! ^FROM_DAEMON | formail -I "X-Spam-Flag: YES" :0Hfw * ^Content-Type: .*(US-ASC|iso-8859-1) | formail -I "X-Spam-Flag: YES" #容量制限:60MBまで :0Hfw * > 60000000 | formail -I "X-Spam-Flag: YES" #よくあるスパムメールを除去 :0Hfw * ^From: .*<(_|-) | formail -I "X-Spam-Flag: YES" #Fromがないもの :0Hfw * ! ^From: .* | formail -I "X-Spam-Flag: YES" #アドレス詐称対策 #Message-IDがなく宛先と送信元が自分自身のアドレスなら #返す先がないので削除 :0Hfw * ! ^Message-ID: .* * $ ^To: .*$ME.* * $ ^From: .*$ME.* | formail -I "X-Spam-Flag: YES" #送信元メールサーバーのDNS名前解決ができないとき :0Hfw * ^Received: .*from unknown | formail -I "X-Spam-Flag: YES"
各ユーザーディレクトリに.procmailrcを作成
HOME=/home/vpopmail/domains/example.jp/username ME=username@example.jp #VERBOSE=ON #詳細なログを記録する #共有ファイルをインクルード INCLUDERC=/etc/procmailrc #スパムフラグがYESだったら削除 :0H * ^X-Spam-Flag: YES /dev/null
最後に.qmailを作成
/home/vpopmail/domains/example.jp/username/.qmail
| /usr/bin/procmail -m ./.procmailrc
参考URL:http://www.jaist.ac.jp/~fjt/procmail.html
別のファイルに制御を渡すこともできます。
SWITCHRC=/etc/switchrc
3,371 views