Postfixのスパム対策
SpamAssassinで迷惑メールを拒否する

Postfix バーチャルメールボックスの設定

■ procmailでSpamAssassinを利用する設定を追加します。

# vi /etc/procmailrc
SHELL=/bin/bash
PATH=/usr/bin:/bin
MAILDIR=/home/mail/virtual/$DOMAIN/$USER/Maildir
DEFAULT=$MAILDIR/
LOCKFILE=/home/mail/virtual/procmail.lock
LOGFILE=/home/mail/virtual/procmail.log
#VERBOSE=ON

# 件名に「未承諾広告※」を含むメールを破棄
:0
* ^Subject:.*iso-2022-jp
* ^Subject:\/.*
* ? echo "$MATCH" | nkf -mwZ2 | sed 's/[[:space:]]//g' | egrep '未承諾広告※'
/dev/null

# ヘッダーに「X-Spam-***」がない場合、spamassassinを起動
:0fw
*!^X-Spam.*
| /usr/bin/spamc

# メールボックスへ配送
:0
* ? test -e "$MAILDIR/.procmailrc"
| /usr/bin/procmail -t -m USER=$USER DOMAIN=$DOMAIN $MAILDIR/.procmailrc

■ SpamAssassin は既に導入済みなので

# systemctl start spamassassin
# systemctl enable spamassassin

■ メールヘッダーを確認します。

X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ISPDCAL72
X-Spam-Level: *
X-Spam-Status: No, score=1.2 required=13.0 tests=CONTENT_TYPE_PRESENT, ISO2022JP_BODY,ISO2022JP_CHARSET,RCVD_NUMERIC_HELO2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0

このように「X-Spam」が追加されているはずです。

■ required_scoreの設定値

初期値は「13.0」となっています、運用しながらベイズフィルタの効果が出始めたら、徐々にスコアを下げて8.0〜6.0に設定すると良いようです。
スコア値は小さい程厳しい設定となります。