カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

PROCMAILレシピ2

この記事は最終更新日から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

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です