Sécurité système · 3 min read · Sep 22, 2025
Configurer Clamav pour des analyses système quotidiennes et des notifications par e-mail sur Debian
Aujourd’hui, nous examinons le logiciel antivirus ClamAV et comment l’utiliser pour protéger votre serveur ou votre bureau. Je vais vous montrer comment configurer ClamAV pour analyser tous les fichiers système, de site web et d’e-mail quotidiennement et vous notifier par e-mail en cas de détection d’un virus. Pour ceux qui ne connaissent pas ClamAV, ClamAV est une solution antivirus open-source disponible sur toutes les distributions Linux. L’une des exigences de ce guide est que votre serveur dispose déjà d’un service de messagerie fonctionnel.
Ce tutoriel fonctionne bien sur les systèmes Debian, mais devrait également être compatible avec les systèmes Ubuntu.
Installation et configuration
Tout d’abord, nous exécutons la commande pour installer Clamav et un outil pour envoyer des notifications par e-mail.
apt-get update && apt-get install clamav clamav-freshclam heirloom-mailxAssurez-vous que la définition des virus sera mise à jour avec la commande :
service ClamAV-freshclam startPar défaut, ClamAV effectuera une vérification des nouvelles définitions de virus toutes les heures. Si vous souhaitez modifier ce paramètre, vous pouvez éditer le fichier /etc/clamav/freshclam.conf.
nano /etc/clamav/freshclam.confEt changez la ligne suivante :
# Check for new database 24 times a day
Checks 24en
# Check for new database 1 times a day
Checks 1Dans ce cas, la vérification ne sera effectuée qu’une fois par jour. Je vous suggère de laisser 24 fois par jour.
Pour effectuer une mise à jour manuelle des définitions de virus, vous pouvez exécuter :
freshclam -vActiver les notifications et planifier l’analyse
Dans le script suivant, modifiez la variable DIRTOSCAN pour spécifier les répertoires que vous souhaitez analyser.
Nous créons le fichier /root/clamscan_daily.sh
nano /root/clamscan_daily.shet nous collons le code suivant :
#!/bin/bash
LOGFILE="/var/log/clamav/clamav-$(date +'%Y-%m-%d').log";
EMAIL_MSG="Veuillez consulter le fichier journal ci-joint.";
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 "Démarrage d'une analyse quotidienne du répertoire "$S".
La quantité de données à analyser est "$DIRSIZE".";
clamscan -ri "$S" >> "$LOGFILE";
# obtenir la valeur des "Lignes infectées"
MALWARE=$(tail "$LOGFILE"|grep Infected|cut -d" " -f3);
# si la valeur n'est pas égale à zéro, envoyer un e-mail avec le fichier journal ci-joint
if [ "$MALWARE" -ne "0" ];then
# utilisant heirloom-mailx ci-dessous
echo "$EMAIL_MSG"|mail -a "$LOGFILE" -s "Malware Trouvé" -r "$EMAIL_FROM" "$EMAIL_TO";
fi
done
exit 0Vous pouvez changer les deux variables EMAIL_FROM et EMAIL_TO pour refléter vos adresses e-mail souhaitées, et modifier la liste des répertoires à analyser dans la variable DIRTOSCAN.
Enregistrez le fichier avec ( ctrl+o ), et changez les permissions comme suit :
chmod 0755 /root/clamscan_daily.shMaintenant, activez l’exécution quotidienne du script en créant un lien symbolique dans le répertoire /etc/cron.daily/ :
ln /root/clamscan_daily.sh /etc/cron.daily/clamscan_dailyVous devriez maintenant être en mesure de recevoir la notification par e-mail une fois par jour pour les virus ou les logiciels malveillants dans vos fichiers de messagerie ou vos sites web. ClamAV analyse également le contenu des fichiers PHP à la recherche de logiciels malveillants ou d’autres contenus potentiellement malveillants.
Tester le script
Dans cette configuration, ClamAV ne fera aucune action sur les virus trouvés, il se contentera de les signaler. Donc ne vous inquiétez pas, rien ne sera supprimé ou modifié. Pour tester le script, exécutez simplement :
/root/clamscan_daily.shAprès l’exécution de la commande, il y aura deux états possibles :
Clamav a trouvé un virus : dans ce cas, vous recevrez un e-mail dans votre boîte de réception avec le journal ci-joint.
Clamav n’a rien trouvé, ou quelque chose s’est mal passé. Dans ce cas, vous devrez vérifier ce que dit le journal. Pour vérifier les journaux, vous devez consulter /var/log/clamav/
Je vais joindre un petit exemple de journal pour savoir ce que vous devez lire :
Démarrage d'une analyse quotidienne du répertoire /var/www. La quantité de données à analyser est 36G.
Lun Juin 15 13:17:14 CEST 2015
----------- RÉSUMÉ DE L'ANALYSE -----------
Virus connus : 3841819
Version du moteur : 0.98.4
Répertoires analysés : 47944
Fichiers analysés : 316827
Fichiers infectés : 0
Données analysées : 17386.77 MB
Données lues : 34921.59 MB (ratio 0.50:1)
Temps : 1432.747 sec (23 m 52 s)
Lun Juin 15 13:41:06 CEST 2015
------------------------------------------------------
------------------------------------------------------
Démarrage d'une analyse quotidienne du répertoire /var/vmail. La quantité de données à analyser est 7.0G.
Lun Juin 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 TROUVÉ
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1371451873.M697795P19793.domain.tld,W=5421,S=5353:2,S: Heuristics.Phishing.Email.SpoofedDomain TROUVÉ
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1390203133.M981287P17350.domain.tld,W=3223,S=3157:2,S: Heuristics.Phishing.Email.SpoofedDomain TROUVÉ
/var/vmail/domain.tld/info/Maildir/.Cestino/cur/1386677288.M361285P15524.domain.tld,W=2270,S=2227:2,S: Heuristics.Phishing.Email.SpoofedDomain TROUVÉDans ce cas, ClamAV a trouvé un e-mail de phishing à [email protected], donc dans ce cas, vous recevrez également l’e-mail.
C’est tout !
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.