ubuntu 20.04 ltsでClamAVを使いウイルススキャンを行う

Linuxでもウイスルが増えてきているため念の為ClamAVを導入した際の備忘録。

インストール

sudo apt install clamav clamav-daemon

サービス起動

clamavデーモンを起動

clamavデーモンは、clamdscanコマンドからの指示を受信してマルチスレッドでウイルススキャンをするサービス。

$ sudo systemctl start clamav-daemon.service 
$ sudo systemctl status clamav-daemon.service 

clamavアップデータを起動

これが起動していると、自動的にウイルス定義ファイルを更新してくれる。

$ sudo systemctl start clamav-freshclam.service 
$ sudo systemctl status clamav-freshclam.service 

定期的にウイルススキャンを行う設定

clamav自体には定期的にウイルススキャンを行うような機能は備わっていない。そのためcronなどを使い、定期的なウイルススキャンができるようにする。

ウイルススキャン実行結果保存用ディレクトリを作成

mkdir -p $HOME/.clamtk/virus
mkdir -p $HOME/.clamtk/history

スクリプトファイル作成

#!/bin/bash

/usr/bin/clamscan \
    --exclude-dir=/path/to/exlude/directories \
    --exclude-dir=/path/to/exlude/directories \
    -r $HOME \
    --move=$HOME/.clamtk/virus \
    --log="$HOME/.clamtk/history/$(date +\%Y\%m\%d-\%H\%M\%S).log" \
    2>/dev/null

if [ $? = 0 ]; then
    echo "ウイルス未検出"
else
    echo "ウイルス検出!!"
fi
#!/bin/bash

find $HOME -type d | xargs clamdscan \
  --infected \
  --multiscan \
  --fdpass \
  --move="$HOME/.clamtk/virus" \
  --log="$HOME/.clamtk/history/$(date +\%Y\%m\%d-\%H\%M\%S).log"

crontabでウイルススキャンの定期実行を設定

上記2つのスクリプトは基本的にどちらでもいいのですが、ウイルススキャンの際の除外フォルダを設定できる「scan.sh」の方を今回は採用しました。

$ crontab -e
# 0・6・12・18時00分にスキャンを行う設定
0 0,6,12,18 * * * bash /ウイルススキャンスクリプトを置いたフォルダ/scan.sh

因みに「rapidscan.sh」の方はスキャン速度が高速で、私の環境では6倍ほどスキャンが早くなりました。

関連記事

コメント

この記事へのコメントはありません。

TOP