株式会社ヴァンデミックシステム

Blog

<スポンサーリンク>

# インストール
yum -y install epel-release
yum -y install clamav clamav-data clamav-devel clamav-filesystem clamav-update clamd

# データベース更新
freshclam

# 全ディレクトリスキャン
clamscan --infected --recursive /var
clamscan --infected --recursive /home
clamscan --infected --recursive /opt


# 動作テスト
cd /root
wget http://www.eicar.org/download/eicar.com

# 検知されればOK「Infected files: 1」と出る
clamscan /root


----------- SCAN SUMMARY -----------
Known viruses: 8564213
Engine version: 0.103.3
Scanned directories: 1
Scanned files: 9
Infected files: 1
Data scanned: 0.02 MB
Data read: 0.01 MB (ratio 2.00:1)
Time: 15.678 sec (0 m 15 s)
Start Date: 2021:09:13 16:06:58
End Date:   2021:09:13 16:07:13
[root@TZVPNH01 ~]#

# 確認用ファイルを削除
rm /root/eicar.com

# 設定
vi /etc/clamd.d/scan.conf
LogFile /var/log/clamd.scan ← コメントアウトをはずしてログファイル有効化
LogTime yes ← コメントアウトをはずしてログへ時間を挿入
LogRotate yes ← コメントアウトをはずしてログローテーション有効化
ExcludePath ^/proc/ ← スキャンコメントアウトをはずして除外ディレクトリ設定
ExcludePath ^/sys/ ← スキャンコメントアウトをはずして除外ディレクトリ設定
User root ← コメントアウトを外して、root権限で動作するように
LocalSocket /var/run/clamd.scan/clamd.sock ← ソケットファイル設定
FixStaleSocket yes ← 異常時にソケットファイルを削除


# Clamd起動
systemctl start clamd@scan
systemctl status clamd@scan
systemctl enable clamd@scan

# 動作テスト
cd /root
wget http://www.eicar.org/download/eicar.com

# 検知されればOK「Infected files: 1」と出る
clamdscan /root


# ウイルススキャンスクリプトを作成する
mkdir -p /scripts/
vim /scripts/clamdscan.sh
------------------------------------
#!/bin/bash

# 設定ファイル
CONFIG=/etc/clamd.d/scan.conf

# ログ
CLAMSCANLOG=`mktemp`

# 隔離ディレクトリ
QUARANTINEDIR=/tmp/clamdscan-quarantinedir-$(date +%Y%m%d)
mkdir -p ${QUARANTINEDIR}

# スキャン実行
clamdscan -c ${CONFIG} --move=${QUARANTINEDIR} / > ${CLAMSCANLOG} 2>&1

# ウイルス発見したらrootへメール送信
if [ -z "$(grep FOUND$ ${CLAMSCANLOG})" ];then
	rm -fr ${QUARANTINEDIR}
else
	grep -A 1 FOUND$ ${CLAMSCANLOG} | mail -s "Virus Found in `hostname` => ${QUARANTINEDIR}" root
	sh ./LINE_Notify.sh "ウイルス検知" "Virus Found in `hostname` => ${QUARANTINEDIR}"
fi
------------------------------------

vim /scripts/LINE_Notify.sh
------------------------------------
#!/bin/sh
export PATH="/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin"
export LANG=C

# LINE Notify API のアクセストークン
access_token="xxx"

# 通知タイトル
subject=$1

# 通知本文
body=$2

# LINE Notify 実行
curl -X POST -H "Authorization: Bearer ${access_token}" \
-F "message=${subject}: ${body}" \
https://notify-api.line.me/api/notify

exit 0
------------------------------------

# cron設定(毎日4時に実行)
crontab -e
0 4 * * * sh /scripts/clamdscan.sh


CentOS 7 ウィルススキャンの導入(ClamAV)

<スポンサーリンク>

コメントを残す

Allowed tags:  you may use these HTML tags and attributes: <a href="">, <strong>, <em>, <h1>, <h2>, <h3>
Please note:  all comments go through moderation.

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)