2014-06-13

概要

オープンソースのアンチウィルスソフト
シグネチャによるパターンマッチング方式を採用[*1]

インストール

2014-06-13現在最新版は0.98.3

インストール:RPM

#sh(bash){{

yum install clamav clamav-update

}}

以下のパッケージがインストールされる

================================================================================
 Package            Arch            Version                 Repository     Size
================================================================================
Installing:
 clamav             x86_64          0.98.3-1.el6            epel          1.4 M
 clamav-db          x86_64          0.98.3-1.el6            epel           84 M

Transaction Summary
================================================================================

関連ファイル

/usr/bin/clamscanウィルススキャン実行バイナリ
/usr/bin/freshclamウィルス定義アップデータ
/var/log/clamav/freshclam.logウィルス定義更新ログ

追加される専用ユーザ

uid=492(clam) gid=489(clam) 所属グループ=489(clam)

アップデート:RPM

ウィルス定義更新中に下記の様なメッセージが表示され、ClamAVパッケージの更新を求められる場合がある

WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.98.3 Recommended version: 0.98.4
DON'T PANIC! Read http://www.clamav.net/support/faq

リンク先を辿って確認すると、yumでインストールした場合にはyumでアップデートしろなっているため、yumを使ってアップデートを実施する

#sh(bash){{

yum update clamav clamav-update

}}

インストール:ソースコードからビルド

#sh(bash){{

_file_package=clamav-0.98.3
_archive_package=${_file_package}".tar.gz"



cd /usr/local/src

wget http://downloads.sourceforge.net/project/clamav/clamav/0.98.3/${_archive_package}

tar -zxf ${_archive_package}

cd ${_file_package}

./configure

make

make install

}}

使い方

定義のアップデート

手動で実行する場合

#sh(bash){{

freshclam

}}

以下のように標準出力に経過が出力される

ClamAV update process started at Fri Jun 13 21:02:49 2014
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
nonblock_connect: connect timing out (30 secs)
Can't connect to port 80 of host db.jp.clamav.net (IP: 211.10.155.48)
Trying host db.jp.clamav.net (219.94.128.99)...
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 219.94.128.99)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.clamav.net
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 120.29.176.126)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.clamav.net
Trying host db.jp.clamav.net (203.178.137.175)...
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 203.178.137.175)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.clamav.net
WARNING: Incremental update failed, trying to download daily.cvd
Downloading daily.cvd [100%]
WARNING: Mirror 27.96.54.66 is not synchronized.
Trying again in 5 secs...
ClamAV update process started at Fri Jun 13 21:04:01 2014
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 218.44.253.75)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.clamav.net
Trying host db.jp.clamav.net (219.94.128.99)...
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 219.94.128.99)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.clamav.net
Trying host db.jp.clamav.net (203.212.42.128)...
WARNING: getfile: daily-18955.cdiff not found on remote server (IP: 203.212.42.128)
WARNING: getpatch: Can't download daily-18955.cdiff from db.jp.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 db.jp.clamav.net (IP: 211.10.155.48)
Trying host db.jp.clamav.net (203.178.137.175)...
Downloading daily.cvd [100%]
daily.cvd updated (version: 19094, sigs: 989163, f-level: 63, builder: neo)
Downloading bytecode.cvd [100%]
bytecode.cvd updated (version: 241, sigs: 46, f-level: 63, builder: dgoddard)
Database updated (3413434 signatures) from db.jp.clamav.net (IP: 203.178.137.175)

バッチ実行可能なのでfreshclamをcrontabなどに登録しておく

0 * * * * /usr/bin/freshclam > /dev/null

デーモンモードで実行する場合

freshclamにはデーモンで起動するオプションがある

#sh(bash){{

_count_update_in_one_day=24



freshclam -d -c ${_count_update_in_one_day}

}}

ウィルススキャン

#sh(bash){{

_dir_target=$HOME



clamscan -r -i ${_dir_target}


}}

主なオプション

-rディレクトリを再帰的にスキャンする
-i検出された項目と結果のサマリだけを表示する
このオプションがないと、チェックしたファイルとその結果も標準出力に書かれる
--remove検出された項目を削除する
--move=$_directory検出された項目を$_directoryに移動する
...
/root/.swatch_script.18754: OK
/root/.cshrc: OK
/root/.bash_history: OK
/root/.history: OK
/root/.swatch_script.18745: OK

----------- SCAN SUMMARY -----------
Known viruses: 3407940
Engine version: 0.98.3
Scanned directories: 1264
Scanned files: 3191
Infected files: 0
Data scanned: 81.14 MB
Data read: 46.27 MB (ratio 1.75:1)
Time: 33.090 sec (0 m 33 s)

SELINUX環境下で

ログ

ログファイル /var/log/clamd.scan をclamdプロセスから書き込む場合には、SELINUXでコンテキストをantivirus_log_tに変更してやる必要がある。

#sh(bash){{

chcon -t antivirus_log_t /var/log/clamd.scan

}}

スキャン

デフォルトではアンチウィルスソフトであろうとファイルシステムを捜査することが許可されていないのでスキャンするとPermission Deniedになる。 なので許可してやる。

#sh(bash){{

setsebool -P antivirus_can_scan_system on

}} https://qiita.com/todaemon/items/d83425058c0e52b258c7

リンク

  1. @IT:脅威が日常化した時代へ備える「ClamAV」
  2. ClamAV

関連ページ


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-04-01 (水) 05:30:01