以前の記事の内容が古くなっていたので一部書き直し。
BlueOnyx に SpamAssassin と ClamAV をインストールし、メールサーバに対して SPAM およびウイルス対策を行った。BlueOnyx に限らず、以下の環境であれば同じ手順で問題なくインストールできると思われる。
- CentOS 5.5
- sendmail 8
RPMforge レポジトリの有効化
まず、今回使用する各プログラムを yum でインストールできるようにするため、RPMforge レポジトリを有効にする。
# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
# rpm -ivh http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
# sed -i -e "s/enabled = 1/enabled = 0/" /etc/yum.repos.d/rpmforge.repo
SpamAssassin のインストール
SPAM メールの検証ソフト SpamAssassin をインストールする。
- yum で spamassassin、spamass-milter をインストールする。
# yum install -y spamassassin spamass-milter --enablerepo=rpmforge
- 送信ドメイン認証や SPF を検証するための Perl モジュールをインストールする。
# yum install -y perl-Mail-DKIM perl-Mail-DomainKeys perl-Mail-SPF-Query --enablerepo=rpmforge
- SpamAssassin の定義ファイルを作成する。今回は TLEC さんのものを使用させていただいた。
# cd /etc/mail/spamassassin # wget -O 10_user_prefs http://www.flcl.org/~yoh/user_prefs
- SpamAssassin の設定ファイルを編集する。
# cd /etc/mail/spamassassin # mv local.cf 20_local.cf # vi 20_local.cf
required_score 7.5 report_safe 0 rewrite_header Subject [SPAM] # 不要なスコアリング score TVD_SPACE_RATIO 0.0 score FH_DATE_PAST_20XX 0.0 score GAPPY_SUBJECT 0.0 score DNS_FROM_OPENWHOIS 0.0 # SPF & DomainKeys score SPF_HELO_SOFTFAIL 2.5 score SPF_SOFTFAIL 2.5 score SPF_FAIL 3.0 score SPF_PASS 0 score DKIM_VERIFIED -2.0 score DKIM_SIGNED -1.0 # 逆引きできない or 動的IPのホスト score RDNS_NONE 4.5 score RDNS_DYNAMIC 1.0
- spamass-milter によるメールヘッダの書換を許可する。
# echo "EXTRA_FLAGS=\"\"" >> /etc/sysconfig/spamass-milter
- ルールセットをアップデートする。
# yum install -y perl-Archive-Tar # sa-update
- spamassassin を起動する。
# /etc/init.d/spamassassin start # /sbin/chkconfig spamassassin on
- spamass-milter を起動する。
# /etc/init.d/spamass-milter start # /sbin/chkconfig spamass-milter on
ClamAV のインストール
次に、ウイルスチェックソフト ClamAV をインストールする。
- yum で clamav clamd clamav-milter をインストールする。
# yum install -y clamav clamd clamav-milter --enablerepo=rpmforge
- ウイルス定義ファイルを最新版に更新する。
# freshclam
- TCP ソケット通信を停止する。
# sed -i -e "s/TCPSocket 3310/#TCPSocket 3310/" /etc/clamd.conf
- 検査結果をメールヘッダに追加するようにする。
# sed -i -e "s/#AddHeader Replace/AddHeader Add/" /etc/clamav-milter.conf
- clamd を起動する。
# /etc/init.d/clamd start # /sbin/chkconfig clamd on
- clamav-milter を起動する。
# /etc/init.d/clamav-milter start # /sbin/chkconfig clamav-milter on
Sendmail との連携
最後に、インストールした 2 つのプログラムと Sendmail を連携させる。
- Sendmail の設定ファイル (/etc/mail/sendmail.mc) を開き、
MAILER(smtp)dnl
という行の直前に、以下の 3 行を追加する。
INPUT_MAIL_FILTER(`clamav', `S=local:/var/clamav/clmilter.socket, F=, T=S:4m;R:4m') INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass.sock, F=, T=C:15m;S:4m;R:4m;E:10m') define(`confINPUT_MAIL_FILTERS', `spamassassin,clamav')
- Sendmail を再起動する。
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf # /etc/init.d/sendmail restart
以後、受信したメールに spamass-milter や clamav-milter のヘッダが挿入されていれば成功だ。ClamAV はメモリをバカ食いするので注意が必要である。
コメント
『RPMforge レポジトリの有効化』
https://onair.jp/archives/568.html
Scientific Linux release 6.4 (Carbon)&BlueOnyx5108Rの場合
1.# vi /etc/yum.repos.d/sl-riken.repo
[riken]
name=Scientific Linux $releasever – $basearch
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el6/en/$basearch/dag
gpgcheck=1
enabled=0
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
2.# yum -y install rpmforge-release
3.# vi /etc/yum.repos.d/rpmforge.repo
### Name: RPMforge RPM Repository for RHEL 6 – dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever – RPMforge.net – dag
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1 # 1から0に変更
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
[rpmforge-extras]
name = RHEL $releasever – RPMforge.net – extras
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/extras
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-extras
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
[rpmforge-testing]
name = RHEL $releasever – RPMforge.net – testing
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/testing
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-testing
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
こんな感じで行けました。ご報告まで。
忘れていました。
上記方法はここを参照しています。
http://www.sa-sa-ki.jp/blog/2011/03/scientific-linux-6-3-scientific-linux-6/
なお、上記方法終了後は『SpamAssassin のインストール』以降はそのまま記載して頂いている内容で行けました。