clamd でウイルススキャン結果をメール送信するスクリプト

Linuxで稼働する無料のウイルスソフト「Clamd」でCronで定期的にウイルススキャンしてその結果を送信するシェルスクリプトを作りました。

下記のサンプルのシェルスクリプトでは、「/home/admin」というホームディレクトリと「/var/www/html」をスキャンしてメールを送信するようにしています

  • SCAN_LOG=/var/tmp/clamav_scan.log でスキャン結果を出力するログファイルの指定しているので、別の場所を指定する場合は任意の箇所に変更して下さい
  • freshclam スキャン実行する前に定義ファイルにアップデートします
  • clamdscan –log=$SCAN_LOG /home/admin スキャンするディレクトリを指定して、スキャン結果を任意のログファイルに出力しています
  • cat $SCAN_LOG | mail -s 'clamdscan scan’ 'admin@example.com’ ログファイをメール本文に設定してメール送信しています。メールの件名を変更する場合は「-s 'clamdscan scan’」の箇所を変更します。メールアドレスの変更は「admin@example.com」の箇所を変更して下さい

 

#!/bin/sh

SCAN_LOG=/var/tmp/clamav_scan.log

# 定義ファイルを更新
freshclam

# スキャン結果を出力するログファイルがある場合は削除
if [ -f $SCAN_LOG ]; then
  rm -f $SCAN_LOG
fi

# [ /home/admin, /var/www/html ] のディレクトリをスキャンする
clamdscan --log=$SCAN_LOG /home/admin
clamdscan --log=$SCAN_LOG /var/www/html

# スキャン結果ログファイルをメールで送信する
cat $SCAN_LOG | mail -s 'clamdscan scan' 'admin@example.com'

「Clamd」のインストール方法は「無料ウイルスソフト clamAVのインストールしてデーモンとして常駐するようにする」を参考にして下さい

LinuxCentOS 7,CentOS 8

Posted by admin