Postfix 3.4 [迷惑メール対策 SpamAssassin ユーザ毎] CentOS7 (マルチドメイン)
↑こちらもご覧ください。記事が新しいです。
Postfix3.3 迷惑メール対策 SpamAssassin(スパムアサシン)、
Postfix3.3 迷惑メール対策 SpamAssassin(スパムアサシン)設定その2の続き。
SpamAssassin(スパムアサシン)の設定ファイルは、
/etc/mail/spamassassin/local.cf
ですが、メールアドレス毎に、「ホワイトリスト」「ブラックリスト」などを設定したい場合があるかと思います。その設定方法を!
procmailrcの調整
# vi /etc/procmailrc :0fw: spamassassin.lock *!^X-Spam-Status.* | /usr/local/bin/spamassassin ↓ :0fw: spamassassin.lock *!^X-Spam-Status.* | /usr/local/bin/spamc -u $USER@$DOMAIN
「spamd」が起動をしているので、前半の「/usr/local/bin/spamassassin」
ではなく、「/usr/local/bin/spamc」 での起動が正解でした(汗)
(Postfix3.3 迷惑メール対策 SpamAssassin(スパムアサシン)設定その2で、当初、間違って書いていました)
「-u」 で、ユーザ名を指定します。
実際には、「-u メールアドレス」となります。
spamdの調整
SpamaAsassinのデーモンである、「spamd」のオプションを変更します。
# vi /etc/rc.d/init.d/spamd SPAMDOPTIONS=" -d -c -m5 -H -s /var/log/spamd.log -D -u vuser --x --virtual-config-dir=/mail/%d/%l/.spamassassin"
「-s /var/log/spamd.log」 で、ログファイル名を指定します。
「-D」 デバックモード。
「–virtual-config-dir=/mail/%d/%l/.spamassassin」
で、ユーザ毎のSpamAssassinの設定ファイルを読み込みます。
「/mail/(ドメイン)/(@前のユーザ)/.spamassassin」
のディレクトリを、設定ファイル関係のファイルと指定します。
この場合、
「/mail/(ドメイン)/(@前のユーザ)/.spamassassin/user_prefs」
が、優先的に読み込まれます。
ユーザ毎の設定ファイルがない場合は、デフォルトの
「/etc/mail/spamassassin/local.cf」
が評価されます。
「–x」は、「–virtual-config-dir」を有効にするには、必須。
ユーザ毎の評価ファイル、
「/mail/(ドメイン)/(@前のユーザ)/.spamassassin/user_prefs」は、
「/etc/mail/spamassassin/local.cf」は、同じファイル形式です。
ユーザ毎のSpamAssasin 結論
procmailrcと、spamdの設定を変えると、ユーザ毎の設定を読みに行きます。
vpopmailだと、-vというオプションだけで、できましたが、MySQLなどのマルチドメインでは、違う感じで、時間がかかりました・・・(汗)
SpamAssasin 残課題
SpamAssasin関係で、やりたいことは、
ホワイトリスト
ブラックリスト
required_score (スパムとする基準スコア)
をユーザ毎に設定できる。というものです。
Qmail + Vpopmailでは、WEBアプリを自作しましたが・・・
さて・・・