「ClamAV」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
4行目: 4行目:
 
[[fr:CLAMAV]]
 
[[fr:CLAMAV]]
 
[[it:ClamAV]]
 
[[it:ClamAV]]
  +
[[ko:ClamAV]]
 
[[ru:ClamAV]]
 
[[ru:ClamAV]]
 
[[sr:ClamAV]]
 
[[sr:ClamAV]]
12行目: 13行目:
   
 
ClamAV は[[公式リポジトリ]]にある {{Pkg|clamav}} パッケージで[[pacman|インストール]]できます。
 
ClamAV は[[公式リポジトリ]]にある {{Pkg|clamav}} パッケージで[[pacman|インストール]]できます。
 
== デーモンの起動 ==
 
 
サービスは {{ic|clamd.service}} です。デーモンを起動したり、ブート時に有効にするといった情報の詳細は[[デーモン]]を読んで下さい。
 
   
 
== データベースの更新 ==
 
== データベースの更新 ==
25行目: 22行目:
 
/var/lib/clamav/daily.cvd
 
/var/lib/clamav/daily.cvd
 
/var/lib/clamav/main.cvd
 
/var/lib/clamav/main.cvd
  +
/var/lib/clamav/bytecode.cvd
   
 
ウイルス定義をアップデートするサービスは {{ic|freshclamd.service}} です。このサービスを起動・有効化することでウイルス定義が最新になります。
 
ウイルス定義をアップデートするサービスは {{ic|freshclamd.service}} です。このサービスを起動・有効化することでウイルス定義が最新になります。
  +
  +
== デーモンの起動 ==
  +
  +
サービスを起動する前にデータベースを更新しないと問題が発生して ClamAV が正しく起動できなくなります。
  +
  +
サービスの名前は {{ic|clamd.service}} です。サービスを起動する方法などは[[デーモン]]を読んでください。サービスを起動する前に {{ic|freshclam}} を実行してください。
   
 
== ソフトウェアのテスト ==
 
== ソフトウェアのテスト ==
38行目: 42行目:
 
stdin: Eicar-Test-Signature FOUND
 
stdin: Eicar-Test-Signature FOUND
   
上記の表示が出ない場合、トラブルシューティングを読むか、あるいは [https://bbs.archlinux.org/ Arch フォーラム] に投稿してください。
+
上記の表示が出ない場合、トラブルシューティングを読むか、あるいは [https://bbs.archlinuxjp.org/ Arch フォーラム] に投稿してください。
  +
  +
== データベースや署名リポジトリの追加 ==
  +
  +
ClamAV は他のリポジトリやセキュリティベンダーから提供されたデータベースや署名を使うことができます。
  +
  +
{{AUR|clamav-unofficial-sigs}} をインストールして {{ic|/etc/clamav-unofficial-sigs/user.conf}} で設定するだけで MalwarePatrol, SecuriteInfo, Yara, Linux Malware Detect などの署名・データベースを追加できます。
   
 
== ウイルスのスキャン ==
 
== ウイルスのスキャン ==
49行目: 59行目:
   
 
感染しているファイルを {{ic|clamscan}} に削除して欲しい場合はコマンドに {{ic|--remove}} オプションを使って下さい。隔離したい場合は {{ic|1=--move=/dir}} を使います。
 
感染しているファイルを {{ic|clamscan}} に削除して欲しい場合はコマンドに {{ic|--remove}} オプションを使って下さい。隔離したい場合は {{ic|1=--move=/dir}} を使います。
  +
  +
{{ic|clamscan}} で巨大なファイルをスキャンするときは、コマンドに {{ic|1=--max-filesize=2000M}} や {{ic|1=--max-scansize=2000M}} オプションを追加してください。2000M というサイズは必要に応じて置き換えてください。
   
 
{{ic|-l ''path/to/file''}} オプションを使うと {{ic|clamscan}} のログがテキストファイルに出力されます。
 
{{ic|-l ''path/to/file''}} オプションを使うと {{ic|clamscan}} のログがテキストファイルに出力されます。
111行目: 123行目:
 
in /var/lib/clamav ERROR: Not supported data format
 
in /var/lib/clamav ERROR: Not supported data format
 
}}
 
}}
  +
 
  +
この問題は {{ic|/etc/freshclam.conf}} の {{ic|DatabaseDirectory}} の設定と {{ic|/etc/clamd.conf}} の {{ic|DatabaseDirectory}} の設定が一致していないことが原因です。{{ic|/etc/freshclam.conf}} が {{ic|/var/lib/clamav}} を指定しているのに、{{ic|/etc/clamd.conf}} (デフォルトディレクトリ) は {{ic|/usr/share/clamav}} など別のディレクトリを指定してしまっています。{{ic|/etc/clamd.conf}} を編集して DatabaseDirectory が {{ic|/etc/freshclam.conf}} と同じになるようにしてください。設定後 clamav は問題なく起動するはずです。
root でデータベースを生成してください:
 
# freshclam -v
 
   
 
=== Error: Can't create temporary directory ===
 
=== Error: Can't create temporary directory ===

2016年9月20日 (火) 22:01時点における版

Clam AntiVirus は UNIX 用のオープンソースの (GPL) アンチウイルスツールキットです。柔軟性がありマルチスレッドで動作するデーモンやコマンドラインスキャナー、データベースを自動的に更新するツールなど、さまざまなユーティリティが含まれています。ClamAV は主として Windows デスクトップのためのファイル・メールサーバーで使われることを想定しているので、基本的には Windows のウイルスやマルウェアを検知します。

インストール

ClamAV は公式リポジトリにある clamav パッケージでインストールできます。

データベースの更新

次のコマンドでウイルス定義を更新します:

# freshclam

データベースのファイルは以下に保存されます:

/var/lib/clamav/daily.cvd
/var/lib/clamav/main.cvd
/var/lib/clamav/bytecode.cvd

ウイルス定義をアップデートするサービスは freshclamd.service です。このサービスを起動・有効化することでウイルス定義が最新になります。

デーモンの起動

サービスを起動する前にデータベースを更新しないと問題が発生して ClamAV が正しく起動できなくなります。

サービスの名前は clamd.service です。サービスを起動する方法などはデーモンを読んでください。サービスを起動する前に freshclam を実行してください。

ソフトウェアのテスト

ClamAV とウイルス定義が正しくインストールされているかどうか確かめるには、clamscan で EICAR テストファイル (ウイルスコードは含まれていない無害な署名です) をスキャンします。

$ wget -O- http://www.eicar.org/download/eicar.com.txt | clamscan -

以下が出力されれば検出成功です:

stdin: Eicar-Test-Signature FOUND

上記の表示が出ない場合、トラブルシューティングを読むか、あるいは Arch フォーラム に投稿してください。

データベースや署名リポジトリの追加

ClamAV は他のリポジトリやセキュリティベンダーから提供されたデータベースや署名を使うことができます。

clamav-unofficial-sigsAUR をインストールして /etc/clamav-unofficial-sigs/user.conf で設定するだけで MalwarePatrol, SecuriteInfo, Yara, Linux Malware Detect などの署名・データベースを追加できます。

ウイルスのスキャン

clamscan を使って特定のファイルやホームディレクトリ、もしくはシステム全体をスキャンすることができます:

$ clamscan myfile
$ clamscan -r -i /home
$ clamscan -r -i --exclude-dir='^/sys|^/proc|^/dev|^/lib|^/bin|^/sbin' /

感染しているファイルを clamscan に削除して欲しい場合はコマンドに --remove オプションを使って下さい。隔離したい場合は --move=/dir を使います。

clamscan で巨大なファイルをスキャンするときは、コマンドに --max-filesize=2000M--max-scansize=2000M オプションを追加してください。2000M というサイズは必要に応じて置き換えてください。

-l path/to/file オプションを使うと clamscan のログがテキストファイルに出力されます。

milter を使う

/etc/clamav/clamav-milter.conf.sample/etc/clamav/clamav-milter.conf にコピーして必要に応じて編集してください。例:

/etc/clamav/clamav-milter.conf
MilterSocket /run/clamav/clamav-milter.sock
MilterSocketMode 660
FixStaleSocket yes
User clamav
PidFile /run/clamav/clamav-milter.pid
TemporaryDirectory /tmp
ClamdSocket unix:/var/lib/clamav/clamd.sock
LogSyslog yes
LogInfected Basic

/etc/systemd/system/clamav-milter.service を作成:

/etc/systemd/system/clamav-milter.service
[Unit]
Description='ClamAV Milter'
After=clamd.service

[Service]
Type=forking
ExecStart=/usr/bin/clamav-milter --config-file /etc/clamav/clamav-milter.conf

[Install]
WantedBy=multi-user.target

サービスを有効化して起動してください。

トラブルシューティング

Error: Clamd was NOT notified

freshclam を実行した後に以下のメッセージが表示される場合:

WARNING: Clamd was NOT notified: Cannot connect to clamd through 
/var/lib/clamav/clamd.sock connect(): No such file or directory

ClamAV の sock ファイルを追加してください:

# touch /var/lib/clamav/clamd.sock
# chown clamav:clamav /var/lib/clamav/clamd.sock

それから、/etc/clamav/clamd.conf を編集して次の行をアンコメントしてください:

LocalSocket /var/lib/clamav/clamd.sock

ファイルを保存してデーモンを再起動してください。

Error: No supported database files found

デーモンを起動した時に次のエラーが表示される場合:

LibClamAV Error: cli_loaddb(): No supported database files found
in /var/lib/clamav ERROR: Not supported data format

この問題は /etc/freshclam.confDatabaseDirectory の設定と /etc/clamd.confDatabaseDirectory の設定が一致していないことが原因です。/etc/freshclam.conf/var/lib/clamav を指定しているのに、/etc/clamd.conf (デフォルトディレクトリ) は /usr/share/clamav など別のディレクトリを指定してしまっています。/etc/clamd.conf を編集して DatabaseDirectory が /etc/freshclam.conf と同じになるようにしてください。設定後 clamav は問題なく起動するはずです。

Error: Can't create temporary directory

次のエラーが UID と GID の番号を含む 'HINT' と一緒に表示される場合:

# can't create temporary directory

パーミッションを直して下さい:

# chown UID:GID /var/lib/clamav & chmod 755 /var/lib/clamav