CentOS7でclamAVインストール
問題
アップロードされたファイルなどのウイルススキャンをしたいです。
答え
clamAVを使ってみます。
インストール
yum install clamav clamav-update clamav-scanner-systemd
依存関係で以下もついてきます。
clamav-filesystem
libtool-ltdl
pcre2
clamav-lib
clamd
設定
vim /etc/clamd.d/scan.conf
「Example」をコメントアウト
# Comment or remove the line below.
# Example ←コメントアウトする
ログの設定例(デフォルト値)
LogFile /var/log/clamd.scan
LogFileMaxSize 2M
LogRotate yes
ローカルソケットを使う設定にする
LocalSocket /var/run/clamd.scan/clamd.sock
ユーザーをコメントアウトするとrootで動作する
# User clamscan
スキャンしないディレクトリがあれば設定
ExcludePath ^/proc/
ExcludePath ^/sys/
常駐(デーモンとして動かす)
systemctl start clamd@scan #clamd起動
systemctl status clamd@scan #clamd稼働状況
systemctl enable clamd@scan #clamd自動起動設定
systemctl list-unit-files | grep clamd* #自動起動の確認
デーモンを利用しないでウイルススキャンをすると遅い。
# clamscan -i eicar_com.zip
eicar_com.zip: Eicar-Test-Signature FOUND
----------- SCAN SUMMARY -----------
Known viruses: 6519624
Engine version: 0.101.4
Scanned directories: 0
Scanned files: 1
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 81.986 sec (1 m 21 s)
常駐させておくとメモリなどは常に使用するがスキャンは速い。
# clamdscan eicar_com.zip
/root/f-secure/eicar_com.zip: Eicar-Test-Signature FOUND
----------- SCAN SUMMARY -----------
Infected files: 1
Time: 0.017 sec (0 m 0 s)
ウイルスを発見した時の動作
/etc/clamd.d/scan.conf に VirusEvent という設定項目があるのだが、セキュリティ面で問題がありおすすめでないという情報があり、また何か設定するとなぜかタイムアウトで起動しなくなる。
# systemctl start clamd@scan
Job for clamd@scan.service failed because a timeout was exceeded. See "systemctl status clamd@scan.service" and "journalctl -xe" for details.
定期的なウイルススキャン、発見時にメールするなどの処理は、自前でスクリプトを組むのがよさそう。
コメント