Postfix Amavisd-new SpamAssassin インストール


amavisd-newインストール
[root@freebsd ~]# cd /usr/ports/security/amavisd-new
[root@freebsd amavisd-new]# make BATCH=yes install clean
[root@freebsd amavisd-new]# cd
amavisd.conf編集
[root@freebsd ~]# vi /usr/local/etc/amavisd.conf
# @bypass_spam_checks_maps  = (1);  # controls running of anti-spam code
↓
@bypass_spam_checks_maps  = (1);  # controls running of anti-spam code ←コメント解除(スパムチェックを行わない)

$mydomain = 'example.com';   # a convenient default for other settings
↓
$mydomain = 'freebsd.orz';   # a convenient default for other settings ←変更(ドメイン名を指定)

$virus_admin               = "virusalert\@$mydomain";  # notifications recip.
↓
#$virus_admin               = "virusalert\@$mydomain";  # notifications recip. ←コメントアウト(ウイルス検知を管理者に通知しない)

↓下記をコメント解除
### http://www.clamav.net/
['ClamAV-clamd',
  \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.sock"],
  qr/\bOK$/m, qr/\bFOUND$/m,
  qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
amavisd起動
[root@freebsd ~]# vi /etc/rc.conf
amavisd_enable="YES" ←追加(amavisd起動)
[root@freebsd ~]# /usr/local/etc/rc.d/amavisd start Starting amavisd.
main.cf編集
[root@freebsd ~]# vi /usr/local/etc/postfix/main.cf
↓最終行に下記を記入
# Filter configuration
content_filter = smtp-amavis:[127.0.0.1]:10024
master.cf編集
[root@freebsd ~]# vi /usr/local/etc/postfix/master.cf
↓最終行に下記を記入
# Amavis configuration
smtp-amavis unix -      -       n       -       2       smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o disable_dns_lookups=yes
    -o max_use=20
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_delay_reject=no
    -o smtpd_client_restrictions=permit_mynetworks,reject
    -o smtpd_helo_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o smtpd_data_restrictions=reject_unauth_pipelining
    -o smtpd_end_of_data_restrictions=
    -o mynetworks=127.0.0.0/8
    -o smtpd_error_sleep_time=0
    -o smtpd_soft_error_limit=1001
    -o smtpd_hard_error_limit=1000
    -o smtpd_client_connection_count_limit=0
    -o smtpd_client_connection_rate_limit=0
SpamassAssin設定
[root@freebsd ~]# chmod 644 /usr/local/etc/mail/spamassassin/v310.pre
[root@freebsd ~]# vi /usr/local/etc/mail/spamassassin/v310.pre
#loadplugin Mail::SpamAssassin::Plugin::TextCat
↓
loadplugin Mail::SpamAssassin::Plugin::TextCat ←コメント解除(TextCatを有効にする)
spamassassin起動
[root@freebsd ~]# vi /etc/rc.conf
spamd_enable="YES" ←追加(spamd起動)
[root@freebsd ~]# sa-update [root@freebsd ~]# /usr/local/etc/rc.d/sa-spamd start Starting spamd.
wgetインストール
[root@freebsd ~]# cd /usr/ports/ftp/wget/
[root@freebsd wget]# make BATCH=yes install clean
[root@freebsd wget]# cd
SpamassAssinアップデート
[root@freebsd ~]# vi /etc/periodic/daily/620.spamassassin
↓下記を記入
#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
cd /usr/local/etc/mail/spamassassin
wget -qN http://www.flcl.org/~yoh/user_prefs
cp user_prefs local.cf
cat << EOF >> local.cf
report_safe 0
rewrite_header Subject ***SPAM***
EOF
/usr/local/etc/rc.d/sa-spamd restart > /dev/null
[root@freebsd ~]# chmod 755 /etc/periodic/daily/620.spamassassin [root@freebsd ~]# /etc/periodic/daily/620.spamassassin [root@freebsd ~]# ll /usr/local/etc/mail/spamassassin total 732 drwxrwxrwx 2 root wheel 512 Mar 2 20:50 bayes -rw-r--r-- 1 root wheel 1300 Mar 2 20:29 init.pre -rw-r--r-- 1 root wheel 1300 Mar 2 20:29 init.pre.sample -rw-r--r-- 1 root wheel 331820 Mar 2 20:51 local.cf ←local.cfを確認 -rw-r--r-- 1 root wheel 1208 Mar 2 20:29 local.cf.sample -rw-r--r-- 1 root wheel 331630 Mar 2 08:00 user_prefs -rw-r--r-- 1 root wheel 2602 Mar 2 20:49 v310.pre -rw-r--r-- 1 root wheel 2603 Mar 2 20:29 v310.pre.sample -rw-r--r-- 1 root wheel 1195 Mar 2 20:29 v312.pre -rw-r--r-- 1 root wheel 1195 Mar 2 20:29 v312.pre.sample -rw-r--r-- 1 root wheel 2416 Mar 2 20:29 v320.pre -rw-r--r-- 1 root wheel 2416 Mar 2 20:29 v320.pre.sample
ヒント
local.cfはドメイン下すべてのユーザーに対して有効です。 1ユーザーのみ有効にさせたいときはuser_prefsを使う。
postfix再起動
[root@freebsd ~]# /usr/local/etc/rc.d/postfix restart
postfix/postfix-script: stopping the Postfix mail system
postfix/postfix-script: starting the Postfix mail system
Procmail設定 (POPの場合)
[root@freebsd ~]# vi /usr/local/etc/procmailrc
↓下記を記入
SHELL=/bin/sh
PATH=/bin:/usr/bin:/usr/local/bin
DROPPRIVS=yes
MAILDIR=$HOME/Maildir
DEFAULT=$MAILDIR/
#LOGFILE=$MAILDIR/procmail.log

:0
* ^Subject:.*=\?[Ii][Ss][Oo]-2022-[Jj][Pp]\?[Bb]\?GyRCTCQ\+NUJ6OS05cCIo
/dev/null

# ヘッダーに「X-Spam-***」がない場合 spamassassin を起動
:0fw
*!^X-Spam.*
|spamassassin
Outlook Expressの設定 (POPの場合)

1.上部メニューから「ツール」>「メッセージ ルール」>「メール」をクリック。

2.「新規作成」をクリック。

3.「件名に指定した言葉が含まれる場合」にチェックを入れ
「指定した言葉が含まれる」をクリック。

4.「***SPAM***」と入力して「追加」をクリック。

5.「OK」をクリック。

6.「指定したフォルダに移動する」にチェックを入れ
「指定したフォルダ」をクリック。

7.「新規フォルダ」をクリック。

8.「SPAM」と入力して「OK」をクリック。

9.「SPAM」を選択して「OK」をクリック。

10.「OK」をクリック。

11.「OK」をクリック。
既存ユーザー用スパムメールボックス作成(IMAPの場合)
[root@freebsd ~]# mkdir -p /home/user_name/Maildir/.spam/{cur,new,tmp}
[root@freebsd ~]# chmod -R 700 /home/user_name/Maildir/.spam
[root@freebsd ~]# chown -R user_name:user_name /home/user_name/Maildir/.spam
追加ユーザー用スパムメールボックス作成(IMAPの場合)
[root@freebsd ~]# mkdir -p /usr/share/skel/Maildir/.spam/{cur,new,tmp}
[root@freebsd ~]# chmod -R 700 /usr/share/skel/Maildir/.spam
procmailrc編集(IMAPの場合)
[root@freebsd ~]# vi /usr/local/etc/procmailrc
↓下記を記入
SHELL=/bin/sh
PATH=/bin:/usr/bin:/usr/local/bin
DROPPRIVS=yes
MAILDIR=$HOME/Maildir
DEFAULT=$MAILDIR/
SPAM=$MAILDIR/.spam/
#LOGFILE=$MAILDIR/procmail.log

:0
* ^Subject:.*=\?[Ii][Ss][Oo]-2022-[Jj][Pp]\?[Bb]\?GyRCTCQ\+NUJ6OS05cCIo
/dev/null

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

# ヘッダーに「X-Spam-Status: Yes」がある場合「.spam」ディレクトリに格納
:0
*^X-Spam-Status: Yes
$SPAM
スパムメール学習
[root@freebsd ~]# vi /etc/periodic/daily/620.sa-learn
↓下記を記入
#!/bin/sh

# spamフォルダをスパムとして学習
/usr/local/bin/sa-learn --spam /home/*/Maildir/.spam/cur

# Maildirフォルダを通常のメールとして学習
/usr/local/bin/sa-learn --ham /home/*/Maildir/cur

# spamフォルダ削除する場合は下記をコメント解除
#/bin/rm -f /home/*/Maildir/.spam/cur/*
Outlook Expressの設定 (IMAPの場合)

1.「IMAPフォルダ」をクリック。

2.「リセット」をクリック。

3.「spam」フォルダを選択して「表示」をクリック。

4.「OK」をクリック。
スパムメール送信テスト
[root@freebsd ~]# echo "XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X"|mail user_name@freebsd.orz
Home PageTop