Sicurezza · 3 min read · Sep 22, 2025
Configura Clamav per scansioni giornaliere del sistema e notifiche via email su Debian
Oggi diamo un’occhiata al software antivirus ClamAV e a come usarlo per proteggere il tuo server o desktop. Ti mostrerò come configurare ClamAV per scansionare quotidianamente tutti i file di sistema, sito web e email e notificarti via email nel caso venga rilevato un virus. Per coloro che non conoscono ClamAV, ClamAV è una soluzione antivirus open-source disponibile su tutte le distribuzioni Linux. Uno dei requisiti di questa guida è che il tuo server abbia già un servizio di posta funzionante.
Questo tutorial funziona bene sui sistemi Debian, ma dovrebbe essere compatibile anche con i sistemi Ubuntu.
Installazione e configurazione
Per prima cosa eseguiamo il comando per installare Clamav e uno strumento per inviare notifiche via email.
apt-get update && apt-get install clamav clamav-freshclam heirloom-mailxAssicurati che la definizione dei virus venga aggiornata con il comando:
service ClamAV-freshclam startPer impostazione predefinita, ClamAV controllerà nuove definizioni di virus ogni ora; se desideri modificare questo parametro, puoi modificare il file /etc/clamav/freshclam.conf.
nano /etc/clamav/freshclam.confE cambia la seguente riga:
# Controlla per un nuovo database 24 volte al giorno
Checks 24in
# Controlla per un nuovo database 1 volta al giorno
Checks 1in questo caso il controllo verrà effettuato solo una volta al giorno. Ti consiglio di lasciare 24 volte al giorno.
Per eseguire un aggiornamento manuale delle definizioni dei virus, puoi eseguire:
freshclam -vAbilita la notifica e pianifica la scansione
Nel seguente script, modifica la variabile DIRTOSCAN per specificare le directory che desideri scansionare.
Creiamo il file /root/clamscan_daily.sh
nano /root/clamscan_daily.she incolliamo il seguente codice:
#!/bin/bash
LOGFILE="/var/log/clamav/clamav-"$(date +'%Y-%m-%d')".log";
EMAIL_MSG="Si prega di vedere il file di log allegato.";
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 "Inizio di una scansione giornaliera della directory "$S".
La quantità di dati da scansionare è "$DIRSIZE".";
clamscan -ri "$S" >> "$LOGFILE";
# ottieni il valore delle "Linee infette"
MALWARE=$(tail "$LOGFILE"|grep Infected|cut -d" " -f3);
# se il valore non è uguale a zero, invia un'email con il file di log allegato
if [ "$MALWARE" -ne "0" ];then
# usando heirloom-mailx qui sotto
echo "$EMAIL_MSG"|mail -a "$LOGFILE" -s "Malware Trovato" -r "$EMAIL_FROM" "$EMAIL_TO";
fi
done
exit 0Puoi cambiare le due variabili EMAIL_FROM e EMAIL_TO per riflettere gli indirizzi email desiderati e cambiare l’elenco delle directory da scansionare nella variabile DIRTOSCAN.
Salva il file con ( ctrl+o ), e cambia i permessi come segue:
chmod 0755 /root/clamscan_daily.shOra abilita l’esecuzione giornaliera dello script creando un symlink nella directory /etc/cron.daily/:
ln /root/clamscan_daily.sh /etc/cron.daily/clamscan_dailyOra dovresti essere in grado di ricevere la notifica via email una volta al giorno per virus o malware nei tuoi file di posta o siti web. ClamAV scansiona anche il contenuto dei file PHP per la presenza di malware o altro contenuto potenzialmente dannoso.
Testa lo script
In questa configurazione, ClamAV non eseguirà alcuna azione sui virus trovati, riporterà solo. Quindi non preoccuparti, nulla verrà eliminato o modificato. Per testare lo script, esegui semplicemente:
/root/clamscan_daily.shDopo che il comando è terminato, ci saranno due possibili stati:
Clamav ha trovato qualche virus: in questo caso riceverai un’email nella tua casella di posta con il log allegato.
Clamav non ha trovato nulla, o qualcosa è andato storto. In questo caso, dovrai controllare cosa dice il log. Per controllare i log dovresti controllare in /var/log/clamav/
Allego un piccolo esempio di log per sapere cosa dovresti leggere:
Inizio di una scansione giornaliera della directory /var/www. La quantità di dati da scansionare è 36G.
Lun Giu 15 13:17:14 CEST 2015
----------- RIEPILOGO SCANSIONE -----------
Virus conosciuti: 3841819
Versione del motore: 0.98.4
Directory scansionate: 47944
File scansionati: 316827
File infetti: 0
Dati scansionati: 17386.77 MB
Dati letti: 34921.59 MB (rapporto 0.50:1)
Tempo: 1432.747 sec (23 m 52 s)
Lun Giu 15 13:41:06 CEST 2015
------------------------------------------------------
------------------------------------------------------
Inizio di una scansione giornaliera della directory /var/vmail. La quantità di dati da scansionare è 7.0G.
Lun Giu 15 13:41:27 CEST 2015
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1386677288.M361286P15524.domain.tld,W=2675,S=2627:2,S: Heuristics.Phishing.Email.SpoofedDomain TROVATO
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1371451873.M697795P19793.domain.tld,W=5421,S=5353:2,S: Heuristics.Phishing.Email.SpoofedDomain TROVATO
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1390203133.M981287P17350.domain.tld,W=3223,S=3157:2,S: Heuristics.Phishing.Email.SpoofedDomain TROVATO
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1386677288.M361285P15524.domain.tld,W=2270,S=2227:2,S: Heuristics.Phishing.Email.SpoofedDomain TROVATOIn questo caso, ClamAV ha trovato alcune email di phishing a [email protected], quindi in questo caso riceverai anche l’email.
Questo è tutto!
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.