Filter用ユーザー・グループを作成する。ちなみにbayesはベイジアンフィルタを使うので、その名前にしました。名前は任意です。
addgroup --system bayes adduser --system --home /var/spool/mail/bayes --no-create-home --disabled-password --ingroup bayes bayes mkdir /var/spool/mail/bayes chown -R bayes:bayes /var/spool/mail/bayes
レシピを織り込む。
mkdir -p /etc/spamassassin/rules.d wget -q -O /etc/spamassassin/rules.d/70_sare_genlsubj.cf http://www.rulesemporium.com/rules/70_sare_genlsubj.cf wget -q -O /etc/spamassassin/rules.d/70_sare_obfu.cf http://www.rulesemporium.com/rules/70_sare_obfu_x31.cf wget -q -O /etc/spamassassin/rules.d/71_japanese.cf http://tlec.linux.or.jp/docs/user_prefs
/etc/spamassassin/local.cfを編集する。
use_bayes 1
bayes_path /var/spool/mail/bayes/auto-bayes
bayes_file_mode 0660
auto_whitelist_path /var/spool/mail/bayes/auto-whitelist
auto_whitelist_file_mode 0660
bayes_auto_learn 1
required_hits 9
rewrite_subject 1
subject_tag [SPAM]
report_safe 0
use_dcc 0
use_pyzor 0
use_razor2 1
skip_rbl_checks 0
rbl_timeout 3
score RCVD_IN_BL_SPAMCOP_NET 3
blacklist_from ブラックリストに載せたいメールアドレスを列挙する
・・・・
report_header 1
/etc/postfix/master.cfを編集する。
smtp inet n - - - - smtpd
-o content_filter=spamd
smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
-o disable_dns_lookups=yes
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
spamd unix - n n - - pipe
user=bayes argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}
/etc/procmailrcを設定し、サーバー全体の振る舞いを決定する。
DROPPRIVS=yes
:0fw |
/usr/bin/spamc
:0
* ^X-Spam-Status: Yes
$DEFAULT
/etc/spamassassin/v310.preを編集する。
loadplugin Mail::SpamAssassin::Plugin::TextCat
更に、PostfixでSpamhausのブロックリストを利用する。
vi /etc/postfix/main.cf
smtpd_recipient_restrictions =
permit_mynetworks,
...
reject_unauth_destination,
reject_rbl_client sbl.spamhaus.org
smtpd_recipient_restrictionsに続けて、reject_rbl_client sbl.spamhaus.orgを記入する。
Postfix、Spamassassinを再起動する。
/etc/init.d/postfix restart
/etc/init.d/spamassassin restart
動作確認方法は、ブラックリストに自分のメールアドレスをリストアップし、送信する。
メールのソースの中に「X-Spam-Checker-Version」の記述があれば、動作している。