ClamAV version: 0.93にアップデート

■ Fedora8 / Fedora9
ClamAVがversion: 0.93にアップデートされたので、ソースから手動でインストール。
■ ソースからインストールした古いバージョンのclamavをアンインストール

アンインストール用にバックアップしてあったモジュールを展開。
[root@server ~]# tar zxvf clamav-0.92.1_self.tar.gz
clamav-0.92.1のディレクトリへ移動
[root@server ~]# cd clamav-0.92.1
clamav-0.92.1のアンインストール
[root@server clamav-0.92.1]# make uninstall
clamav-0.92.1のファイルとディレクトリーを削除
[root@server clamav-0.92.1]# cd
[root@server ~]# rm -f clamav-0.92.1_self.tar.gz
[root@server ~]# rm -rf clamav-0.92.1
古いバージョンのディレクトリーの削除
[root@server ~]# rm -rf /usr/local/clamav

clamavはインストールする前に
「clamav」という名前のユーザとグループを作成しておく必要がある。

[root@linux ~]# groupadd clamav
[root@linux ~]# useradd -g clamav -s /bin/false clamav

■ 最新版のClamAVをダウンロード 最新版は公式サイトで確認。

[root@server ~]# wget http://freshmeat.net/redir/clamav/29355/url_tgz/clamav-0.93.tar.gz
clamav-0.93を展開
[root@server ~]# tar zxvf clamav-0.93.tar.gz
ダウンロードしたファイルを削除
[root@server ~]# rm -f clamav-0.93.tar.gz
clamav-0.93ディレクトリーへ移動
[root@server ~]# cd clamav-0.93
Makefileを自動作成するためのツール「configure」を実行。
[root@server clamav-0.93]# ./configure --prefix=/usr/local/clamav
makeを実行し、clamavをインストール
[root@server clamav-0.93]# make
[root@server clamav-0.93]# make install

■ アンインストール用にバックアップしておく

[root@server clamav-0.93]# cd
[root@server ~]# tar cvf clamav-0.93_self.tar ./clamav-0.93
[root@server ~]# gzip clamav-0.93_self.tar

■ 設定ファイル変更
インストールが正常に完了したらまず、二つの設定ファイル
/usr/local/clamav/etc/freshclam.conf
/usr/local/clamav/etc/clamd.conf
をエディタで開きExampleと書かれた行をコメントアウトし、保存。

[root@server ~]# vi /usr/local/clamav/etc/freshclam.conf
# Comment or remove the line below.
Example
↓
#Example
[root@server ~]# vi /usr/local/clamav/etc/clamd.conf
# Comment or remove the line below.
Example
↓
#Example

■ 「freshclam」を使用してVirusDBをアップデート

[root@server ~]# /usr/local/clamav/bin/freshclam
ClamAV update process started at Sun Apr 27 08:59:28 2008
main.cvd is up to date (version: 46, sigs: 231834, f-level: 26, builder: sven)
WARNING: getfile: daily-6689.cdiff not found on remote server (IP: 219.117.246.122)
WARNING: getpatch: Can't download daily-6689.cdiff from database.clamav.net
WARNING: getfile: daily-6689.cdiff not found on remote server (IP: 219.117.246.122)
WARNING: getpatch: Can't download daily-6689.cdiff from database.clamav.net
nonblock_connect: connect timing out (30 secs)
Can't connect to port 80 of host database.clamav.net (IP: 211.10.155.48)
Trying host database.clamav.net (211.12.214.131)...
WARNING: getfile: daily-6689.cdiff not found on remote server (IP: 211.12.214.131)
WARNING: getpatch: Can't download daily-6689.cdiff from database.clamav.net
WARNING: Incremental update failed, trying to download daily.cvd
nonblock_connect: connect timing out (30 secs)
Can't connect to port 80 of host database.clamav.net (IP: 211.10.155.48)
Trying host database.clamav.net (211.12.214.131)...
Downloading daily.cvd [100%]
daily.cvd updated (version: 6957, sigs: 39725, f-level: 26, builder: arnaud)
Database updated (271559 signatures) from database.clamav.net (IP: 211.12.214.131)

■ ウィルススキャン確認(/etc/passwdをスキャンしてみる)

[root@server ~]# /usr/local/clamav/bin/clamscan --infected --remove --recursive /etc/passwd
----------- SCAN SUMMARY -----------
Known viruses: 270800
Engine version: 0.93
Scanned directories: 0
Scanned files: 1
Infected files: 0
Data scanned: 0.00 MB
Time: 4.017 sec (0 m 4 s)

version: 0.93でスキャンされてることを確認
■ Clam AntiVirusの定期自動実行設定
毎日自動的にウィルス定義ファイル最新化して、全てのファイルのウィルススキャンを行うスプリクトの作成

[root@linux ~]# vi clamav.sh
#!/bin/bash
PATH=/usr/bin:/bin
# excludelist
excludelist=/root/clamscan.exclude
if [ -s $excludelist ]; then
for i in `cat $excludelist`
do
if [ $(echo "$i"|grep \/$) ]; then
i=`echo $i|sed -e 's/^\([^ ]*\)\/$/\1/p' -e d`
excludeopt="${excludeopt} --exclude-dir=$i"
else
excludeopt="${excludeopt} --exclude=$i"
fi
done
fi
CLAMSCANTMP=`mktemp`
/usr/local/clamav/bin/freshclam > /dev/null
/usr/local/clamav/bin/clamscan --recursive --remove ${excludeopt} / > $CLAMSCANTMP 2>&1
[ ! -z "$(grep FOUND$ $CLAMSCANTMP)" ] && \
grep FOUND$ $CLAMSCANTMP | mail -s "Virus Found in `hostname`" root
rm -f $CLAMSCANTMP

■ Clam AntiVirus定期自動実行スクリプトに実行権限付加

[root@linux ~]# chmod 700 clamav.sh

■ cron編集

[root@linux ~]# crontab -e
00 03 * * * /root/clamav.sh ← 追加(毎日3:00にClam AntiVirusの定期自動実行)

■ スキャン除外設定
backupディレクトリをスキャン対象外にするように設定

[root@linux ~]# echo "/backup/" >> clamscan.exclude