Linux で自宅サーバ [ Home Server Techncial ]

>>トップページに戻る

 アンチウィルスソフト ClamAV の導入

ClamAV とは、Linuxで動作するGPLのアンチウィルスソフトウェアです。
詳しくはClamAVのページをご覧ください。

最近のコンテンツではありがちですが、私がインストールした時の防備録程度のメモで申し訳ありません。
こんなメモでもいつか、誰かのお役に立てるかもしれませんので公開しておきます。

アンチウィルスソフトという性質上、セキュリティ面には十分注意してください。
当サイトで紹介している設定の中にはウィルスと判定されると即削除するパラメータを扱っています。
必要なファイルがウィルスと判定され削除されてしまう場合も考えられますので、十分に注意して設定を行ってください。

ページ内コンテンツ一覧

▲ページの最上部に戻る

 Clam AntiVirus のインストール

デフォルト状態のyumではインストールできない為、 サードパーティリポジトリの設定を行います。

■Clam AntiVirusインストール

CentOS5の場合

# wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm ← rpmforgeリポジトリのダウンロード
# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm ← rpmforgeリポジトリインストール
# rm -f rpmforge-release-0.3.6-1.el5.rf.i386.rpm ← rpmforgeリポジトリ削除

CentOS4の場合

# wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm ← rpmforgeリポジトリダウンロード
# rpm -Uvh rpmforge-release-0.3.6-1.el4.rf.i386.rpm ← rpmforgeリポジトリインストール
# rm -f rpmforge-release-0.3.6-1.el4.rf.i386.rpm ← rpmforgeリポジトリ削除

CentOS4、CentOS5共通

# sed -i 's/enabled = 1/enabled = 0/g' /etc/yum.repos.d/rpmforge.repo ← 基本リポジトリとのパッケージ競合を避けるため、デフォルトは無効にしておく
# yum --enablerepo=rpmforge install clamd ← Clam AntiVirusインストール

clamav、clamav-db、clamdがインストールされます。

▲ページの最上部に戻る

 Clam AntiVirus の設定

設定ファイルをエディタで開き以下を修正します。

# vi /etc/clamd.conf

User clamav

#User clamav ← コメントにする

設定できたら保存しら終了します。

▲ページの最上部に戻る

 Clam AntiVirus の起動

# /etc/rc.d/init.d/clamd start Starting Clam AntiVirus Daemon: [ OK ]

自動起動の設定

# chkconfig clamd on

自動起動の確認

# chkconfig --list clamd
clamd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

▲ページの最上部に戻る

 ウィルス定義ファイルを最新版にする

定義ファイルの設定ファイルを編集

# vi /etc/freshclam.conf

# Comment or remove the line below.
#Example ← コメントにする

ウィルス定義ファイルを最新版にする

# freshclam
(省略)
Downloading daily-2650.cdiff [100%]
Downloading daily-2651.cdiff [100%]
Downloading daily-2652.cdiff [100%]
Downloading daily-2653.cdiff [100%]
Downloading daily-2654.cdiff [100%]
Downloading daily-2655.cdiff [100%]
Downloading daily-2656.cdiff [100%]
Downloading daily-2657.cdiff [100%]
daily.cvd updated (version: 2657, sigs: 11323, f-level: 13, builder: sven)
Database updated (95274 signatures) from db.jp.clamav.net (IP: 61.205.61.201)
Clamd successfully notified about the update.

freshclam は今後、Cron(/etc/cron.daily/freshclam)により毎日実行されます。

▲ページの最上部に戻る

 ウィルススキャン

システム全体をスキャンする

# clamscan -r /

スキャンするディレクトリを指定する場合は以下のコマンドを実行。
例では/home以下のみをスキャンする。

# clamscan -r /home

設定例 特定のディレクトリやファイルを除外して検索する場合 --exclude (ファイル指定) --exclude-dir (ディレクトリ指定) 上記を踏まえて。。 /etc/ 以下と /var/ 以下を除外する場合。

# clamscan -r / --exclude-dir="etc|var"

*.core という拡張子と *.snap という拡張子が付くファイルを除外する場合。

# clamscan -r / --exclude=".*\.core|.*\.snap"$

ウィルスを発見次第削除する場合には以下のオプションを付けて実行。

# clamscan --remove

テスト用のウィルスファイルをダウンロードしてのテスト

# wget http://www.eicar.org/download/eicar.com.txt
# wget http://www.eicar.org/download/eicar.com
# wget http://www.eicar.org/download/eicarcom2.zip

システム全体をスキャンし、ウィルスを発見次第削除する

# clamscan --remove -r /
(省略)
/root/eicar.com: Eicar-Test-Signature FOUND
/root/eicar.com: Removed.
/root/eicar.com: Removed.
(省略)
----------- SCAN SUMMARY -----------
Infected files: 15
Time: 3004.568 sec (50 m 4 s)


時間掛かります・・・。 Clam AntiVirus のインストール時テスト用ウィルスもインストールされるので、 必ずウィルスが検出されます。

▲ページの最上部に戻る

 ウィルススキャンを定期的に実行

ウィルススキャン用のスクリプトを新規作成します。

# vi clamscan.sh

#!/bin/sh PATH=/usr/bin:/bin TMPCLAMSCAN=`mktemp` clamscan -r / --exclude="/usr/bin/dar.*"$ > $TMPCLAMSCAN grep "FOUND" $TMPCLAMSCAN > /var/log/clamav.log rm -r $TMPCLAMSCAN

実行権限を与える

# chmod +x clamscan.sh

Cronで毎日実行させたいので、/etc/cron.daily/に移動する。

# mv clamscan.sh /etc/cron.daily/

▲ページの最上部に戻る

 yum の設定(暫定処置)

ClamAV をインストールすると、clamav-db と clamav 衝突し、yum による update ができなくなります。
ですので、yumのアップデート対象からClamav関連のパッケージを除外します。
(抜本的解決にはなりませんが、ClamAVの為にyum updateが出来ない方が問題なので、今回の措置を取ることにしました。)

yum の設定ファイルである yum.conf をエディタで開きます。

# vi /etc/yum.conf

以下の一文を追記します。

exclude=clamav*

これで yum のアップデート対象から「clamav」の文字を含んだものが除外されます。

以上です。

▲ページの最上部に戻る

Copyright© Home Server Technical. All Right Reserved.
webmaster@miloweb.net