Skip to content

Instantly share code, notes, and snippets.

@mdutt247
Last active November 19, 2023 07:05
Show Gist options
  • Save mdutt247/5d6bda654914d2d74eb44afe8ee4f141 to your computer and use it in GitHub Desktop.
Save mdutt247/5d6bda654914d2d74eb44afe8ee4f141 to your computer and use it in GitHub Desktop.
Clamav hourly scan
#!/usr/bin/env bash
# Author: M. Dutt ([email protected])
# Date: 19/11/2023
# Purpose: Clamav hourly scan.
#
# chmod +x /path/to/script/clamscan_hourly.sh
#
# 01 * * * * /path/to/script/clamscan_hourly.sh
#
SUBJECT="`hostname` PASSED HOURLY SCAN"
EMAIL="[email protected]"
LOG=/var/log/clamav/clamav.log
TMP_LOG=/tmp/clam.hourly
av_report() {
if [ `cat ${TMP_LOG} | grep Infected | grep -v 0 | wc -l` != 0 ]
then
SUBJECT="[WARNING] `hostname` HOURLY SCAN"
fi
EMAILMESSAGE=`mktemp /tmp/virus-alert.XXXXX`
echo "To: ${EMAIL}" >> ${EMAILMESSAGE}
echo "From: [email protected]" >> ${EMAILMESSAGE}
echo "Subject: ${SUBJECT}" >> ${EMAILMESSAGE}
echo "Importance: High" >> ${EMAILMESSAGE}
echo "X-Priority: 1" >> ${EMAILMESSAGE}
echo "`tail -n 50 ${TMP_LOG}`" >> ${EMAILMESSAGE}
sendmail -t < ${EMAILMESSAGE}
cat ${TMP_LOG} >> ${LOG}
rm -rf ${TMP_LOG}
}
av_scan() {
touch ${TMP_LOG}
find / -not -wholename '/sys/*' -and -not -wholename '/proc/*' -mmin -61 -type f -print0 | xargs -0 -r clamscan --exclude-dir=/proc/ --exclude-dir=/sys/ --quiet --infected --log=${TMP_LOG}
}
av_scan
av_report
#systemctl stop clamav-freshclam
#freshclam
#systemctl start clamav-freshclam
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment