Configurare clamav per la scansione e notifica di virus e malware

Oggi vediamo come possiamo installare e configurare Clamav per la scansione e la notifica dei virus.

Per chi non lo sapesse, Clamav è uno degli antivirus open-source gratuiti più famosi che troviamo in ambiente Linux, oggi vediamo velocemente come configurarlo.

Presupposto di questa guida è che il vostro sistema sia già dotato di un server di posta funzionante per le notifiche.

Installazione e configurazione

Per prima cosa installiamolo con il comando:

apt-get update && apt-get install clamav clamav-freshclam heirloom-mailx

assicuriamoci ora che le definizioni dei virus siano aggiornate e che il nostro antivirus sia in esecuzione con il comando

service clamav-freshclam start

Di default clamav effettua il controllo delle nuove definizioni dei virus ogni ora, ma se volete cambiare questo parametro dovrete editare file /etc/clamav/freshclam.conf

nano /etc/clamav/freshclam.conf

Se volete effettuare un aggiornamento manuale delle definizioni non dovete fare altro che eseguire il comando

freshclam -v

Abilitazione notifiche e schedulazione scansione

Nello script seguente (sicuramente migliorabile), dovete modificare la variabile DIRTOSCAN, indicando la directory che intendete scansionare.

Creiamo il file /root/clamav_scan.sh con il comando

nano /root/clamscan_daily.sh

Ed incolliamo il seguente codice, facendo attenzione a modificare la DIRTOSCAN, elencando la directory di cui vogliamo fare la scansione

#!/bin/bash
LOGFILE="/var/log/clamav/clamav-$(date +'%Y-%m-%d').log"; 
EMAIL_MSG="Please see the log file attached."; 
EMAIL_FROM="[email protected]";
EMAIL_TO="[email protected]";
DIRTOSCAN="/var/www /var/vmail";

for S in ${DIRTOSCAN}; do
 DIRSIZE=$(du -sh "$S" 2>/dev/null | cut -f1);

 echo "Starting a daily scan of "$S" directory.
 Amount of data to be scanned is "$DIRSIZE".";

 clamscan -ri "$S" >> "$LOGFILE";

 # get the value of "Infected lines" 
 MALWARE=$(tail "$LOGFILE"|grep Infected|cut -d" " -f3); 

 # if the value is not equal to zero, send an email with the log file attached 
 if [ "$MALWARE" -ne "0" ];then 
 #using heirloom-mailx below 
 echo "$EMAIL_MSG"|mail -a "$LOGFILE" -s "Malware Found" -r "$EMAIL_FROM" "$EMAIL_TO"; 
 fi 
done

exit 0

Salviamo il file ( ctrl+o ), e modifichiamo i permessi

chmod 0755 /root/clamscan_daily.sh

Ora abilitamo l’esecuzione giornaliera del nostro script, creando semplicemente un symlink

ln /root/clamscan_daily.sh /etc/cron.daily/clamscan_daily

Author: Matteo Temporini

Nato nel 1979 a Udine (Italia), ho conseguito il diploma di scuola superiore come Programmatore. Ho proseguito gli studi ottenendo nel 2006 la Laurea in Informatica, presso l'università degli studi di Udine. Da sempre appassionato al mondo del Web, ho maturato un esperienza decennale come sistemista Linux e Windows presso varie aziende. Quello che state leggendo su questo sito è frutto della mia esperienza diretta, che continua a crescere grazie ad amici e colleghi.

Share This Post On

Submit a Comment

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Per postare il commento, risolvi il quesito sottostante * Time limit is exhausted. Please reload CAPTCHA.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

All original content on these pages is fingerprinted and certified by Digiprove