Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
clamav [Le 28/08/2018, 11:46]
193.60.133.195 Balise break fix
clamav [Le 03/11/2022, 16:32] (Version actuelle)
78.196.241.242 [ClamAV] précisions sur que ClamAV est et surtou n'est pas !
Ligne 3: Ligne 3:
  
 {{ applications:​clam.png?​96}} {{ applications:​clam.png?​96}}
-====== ​Clam AntiVirus ​======+====== ​ClamAV ​======
  
-**Clam AntiVirus** (ClamAv) est un [[:​antivirus]] ​GPL pour UNIX. La principale qualité de cet antivirus est qu'il permet de balayer les courriels ​reçus et envoyés avec un logiciel ​de messagerie ​classique. Le paquet que nous allons installer inclut un démon multi-tâches flexible et configurable,​ un antivirus en ligne de commande et un utilitaire pour une mise à jour automatique des définitions de virus via Internet. Le programme est basé sur une bibliothèque distribuée avec le paquet ​Clam AntiVirus, que vous pouvez utiliser pour créer votre propre logiciel. Le plus important est que la base de données des virus soit mise à jour.+**ClamAV** (Clam Antivirus) est une boîte à outils ​[[:​antivirus]] ​sous licence libre (GPLv2) spécialement conçue ​pour l'analyse des courriels ​sur les serveurs ​de messagerie. ​ 
 +<note tip>​**ClamAV** n'est pas un anti-virus traditionnel destiné aux postes de travail.</​note>​ 
 +Le paquet que nous allons installer inclut un démon multi-tâches flexible et configurable,​ un antivirus en ligne de commande et un utilitaire pour une mise à jour automatique des définitions de virus via Internet. Le programme est basé sur une bibliothèque distribuée avec le paquet ​ClamAV, que vous pouvez utiliser pour créer votre propre logiciel. Le plus important est que la base de données des virus soit mise à jour.
  
-Cette page explique comment installer le paquet « clamav » et comment utiliser l'​antivirus. Le numéro de version de Clamav ​dépend de votre version d'​Ubuntu.+Cette page explique comment installer le paquet « clamav » et comment utiliser l'​antivirus. Le numéro de version de ClamAV ​dépend de votre version d'​Ubuntu.
  
-<note tip>​Clamav [[http://​investor.sourcefire.com/​phoenix.zhtml?​c=204582&​p=irol-newsArticle&​ID=1041607|a été acquis récemment par la société SourceFire]]. Le projet devrait rester opensource, cf. Tomasz Kojm, le fondateur du projet Clamav : //« Nous sommes très heureux de rejoindre Sourcefire et nous pensons que cette union va apporter une valeur ajoutée qui sera aussi bénéfique pour la communauté opensource que pour les clients commerciaux de SourceFire. »// (traduction de [[:​utilisateurs:​zetotof|Christophe-Marie Duquesne]]).</​note>​ 
  
 ===== Installation ===== ===== Installation =====
 +
  
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​clamav]]** [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​clamav]]**
Ligne 19: Ligne 21:
  
 ^ Action ^ Commande ^ ^ Action ^ Commande ^
-| Mise à jour des définitions antivirus | <​code>​sudo freshclam</​code>​ | +| Mise à jour des définitions antivirus | <​code>​freshclam</​code>​ | 
-| Balayer les fichiers du dossier personnel | <​code>​sudo clamscan</​code>​ | +| Balayer les fichiers du dossier personnel | <​code>​clamscan</​code>​ | 
-| Balayer tous les fichiers du dossier personnel (avec -r "Scan subdirectories recursively"​)| <​code>​sudo clamscan -r /​home/​utilisateur</​code>​ | +| Balayer tous les fichiers du dossier personnel (avec -r "Scan subdirectories recursively"​)| <​code>​clamscan -r /​home/​utilisateur</​code>​ | 
-| Balayer le disque dur entier | <​code>​sudo clamscan -r /</​code>​ | +| Balayer le disque dur entier | <​code>​clamscan -r /</​code>​ | 
-| Balayer une partition Windows (Fat 32), montée en "/​mnt/​D"​. Signal sonore et affichage si virus trouvé et écriture dans virus.log |<​code>​sudo clamscan --bell -r -i --log=/var/log/clamav/virus.log /​mnt/​D/</​code>​|+| Balayer une partition Windows (Fat 32), montée en "/​mnt/​D"​. Signal sonore et affichage si virus trouvé et écriture dans virus.log |<​code>​clamscan --bell -r -i --log=/home/utilisateur/virus.log /​mnt/​D/</​code>​|
  
  
Ligne 33: Ligne 35:
 </​file>​ </​file>​
  
- ​* ​Ou si un autre processus bloque freshclam et l'​écriture dans le fichier ​ /​var/​log/​resul_freshclam.txt :+Ou si un autre processus bloque freshclam et l'​écriture dans le fichier ​ /​var/​log/​resul_freshclam.txt :
 <file bash> <file bash>
 #!/bin/sh #!/bin/sh
Ligne 55: Ligne 57:
  
 Voir le [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=11975411#​p11975411|forum]] Voir le [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=11975411#​p11975411|forum]]
 +
 +==== Mises à jour manuelle des signatures ====
 +=== Exécution de la mise  jour des signatures ===
 +
 +Normalement,​ vous pouvez exécuter les mises à jour en exécutant ces trois commandes (qui vous permettent dans l'​ordre d'​arrêter le service, de lancer la mise à jour et de relancer le service):
 +  systemctl stop clamav-freshclam
 +  sudo freshclam
 +  systemctl start clamav-freshclam
 +  ​
 +=== Augmentation du délai de récupération des mises à jours ===
 +Par défaut, ce délai ("​timeout"​) est souvent trop réduit. L'​exécution de la commande de la commande **freshclam** (cf. paragraphe ci-dessus) donne donc souvent lieu à des erreurs similaires à celle-ci :
 +<​code>​Wed Nov  4 07:28:07 2020 -> ClamAV update process started at Wed Nov  4 07:28:07 2020
 +Wed Nov  4 07:28:07 2020 -> daily.cvd database is up to date (version: 25977, sigs: 4338215, f-level: 63, builder: raynman)
 +Wed Nov  4 07:28:07 2020 -> main database available for download (remote version: 59)
 +Wed Nov  4 07:28:37 2020 -> ^Download failed (28) Wed Nov  4 07:28:37 2020 -> ^ Message: Timeout was reached
 +Wed Nov  4 07:28:37 2020 -> ^getcvd: Can't download main.cvd from https://​database.clamav.net/​main.cvd
 +Wed Nov  4 07:28:37 2020 -> Trying again in 5 secs...
 +Wed Nov  4 07:28:42 2020 -> main database available for download (remote version: 59)
 +Wed Nov  4 07:29:12 2020 -> ^Download failed (28) Wed Nov  4 07:29:12 2020 -> ^ Message: Timeout was reached
 +Wed Nov  4 07:29:12 2020 -> ^getcvd: Can't download main.cvd from https://​database.clamav.net/​main.cvd
 +Wed Nov  4 07:29:12 2020 -> Trying again in 5 secs...</​code>​
 +
 +La solution est donc d'​augmenter ce délai(([[https://​dhenandi.com/​solved-clamav-download-failed-message-timeout-was-reached/​|[Solved] ClamAV Download Failed, Message: Timeout was reached]])) en modifiant le fichier de configuration de freshclam(([[Documentation - Configuration - freshclam.conf|http://​www.clamav.net/​documents/​configuration#​freshclamconf]])).
 +
 +  * Pour cela, il faut arrêter le service, si ce n'​était pas déjà fait:
 +<​code>​systemctl stop clamav-freshclam</​code>​
 +  * [[:​tutoriel:​comment_modifier_un_fichier|Modifier]] le fichier de configuration de freshclam **/​etc/​clamav/​freshclam.conf** en remplaçant :
 +<​code>​ReceiveTimeout 30</​code>​
 +par
 +<​code>#​ ReceiveTimeout 30 -> Timeout
 +ReceiveTimeout 300</​code>​
 +  * On peut alors relancer la mise à jour manuelle des définitions avec <​code>​sudo freshclam</​code>​ et vérifier qu'​elle se déroule normalement. On devrait obtenir un message similaire à celui-ci:
 +<​code>​Wed Nov  4 07:55:17 2020 -> ClamAV update process started at Wed Nov  4 07:55:17 2020
 +Wed Nov  4 07:55:17 2020 -> daily.cvd database is up to date (version: 25977, sigs: 4338215, f-level: 63, builder: raynman)
 +Wed Nov  4 07:55:17 2020 -> main.cvd database is up to date (version: 59, sigs: 4564902, f-level: 60, builder: sigmgr)
 +Wed Nov  4 07:55:17 2020 -> bytecode.cvd database is up to date (version: 331, sigs: 94, f-level: 63, builder: anvilleg)</​code>​
 +  * On peut alors relancer le service
 +<​code>​systemctl start clamav-freshclam</​code> ​
 +
 +=== Nettoyage de la bibliothèque des mises à jours ===
 +
 +Lors de la 1ère installation le dossier qui contient celle-i **/​var/​lib/​clamav** fait 225Mo mais rapidement plusieurs Go, d'où l'​intérêt du nettoyage.
 +
 +__Avec le terminai et le gestionnaire de fichier nemo cela donne__ :
 +
 +  - Dans le terminal tapez pour ouvrir le dossier dans le gestionnaire de fichier en root <​code>​sudo nemo /​var/​lib/​clamav/</​code>​
 +  - **NB** Faites une copie des fichiers qui vont être supprimés où vous le souhaitez
 +  - Sélectionnez tous les fichiers
 +  - Sélectionnez avec un clic droit de souris //​supprimer//​ ou //mettre à la corbeille//
 +  - Retournez dans le terminal et appuyez sur **//Ctrl + c//** pour refermez nemo en root puis tapez <​code>​sudo reboot</​code>​ pour redémarrer votre PC
 +
 +En rédémarrant,​ clamav va reconstruire la bibliothèque virale comme la première fois et votre pc sera allégé de plusieurs Go si vous le n'avez jamais fait.
 +
 +Si votre ligne internet est lente, attendez 5 minutes pour aller vérifier la bonne réalisation de tout cela en allant consulter **en mode root** dans /​var/​log/​clamav/​ le fichier appelé //​freshclam.log//​.
 +
 +
 +PS : autodidacte Linux-Debian de longue date je suis; merci aux avertis Linux-Debian d'​apporter les compléments qui vous semblent indispensables.
 ===== Paramètres ===== ===== Paramètres =====
  
Ligne 126: Ligne 185:
 inotifywait -q -r -e  create,​modify,​move,​delete,​open,​close,​access ​ "​$DOSSIER"​ --format '​%w%f|%e'​ | sed --unbuffered '​s/​|.*//​g'​ | inotifywait -q -r -e  create,​modify,​move,​delete,​open,​close,​access ​ "​$DOSSIER"​ --format '​%w%f|%e'​ | sed --unbuffered '​s/​|.*//​g'​ |
  
-while read FICHIER; do +while read FICHIER; do
  clamdscan -m -v --fdpass "​$FICHIER"​ --move=$QUARANTAINE  clamdscan -m -v --fdpass "​$FICHIER"​ --move=$QUARANTAINE
         if [ "​$?"​ == "​1"​ ]; then         if [ "​$?"​ == "​1"​ ]; then
- echo "​`date` - Malware trouvé dans le fichier '​$FICHIER'​. Le fichier a été déplacé dans $QUARANTAINE."​ >> $LOG + echo "​`date` - Malware trouvé dans le fichier '​$FICHIER'​. Le fichier a été déplacé dans $QUARANTAINE."​ >> $LOG
  echo -e "​\033[31mMalware trouvé!!!\033[00m"​ "Le fichier '​$FICHIER'​ a été déplacé en quarantaine."​  echo -e "​\033[31mMalware trouvé!!!\033[00m"​ "Le fichier '​$FICHIER'​ a été déplacé en quarantaine."​
  if [ -f /​usr/​bin/​notify-send ]; then  if [ -f /​usr/​bin/​notify-send ]; then
Ligne 140: Ligne 199:
  
 <note important>​Fait important, clamdscan fait toujours une analyse récursive. Pour notre application ce n'est pas forcément pertinent. Cela pourrait dépendre de votre application. Personnellement je trouverais plus logique de ne vérifier que les fichiers de la racine du répertoire où il y a eu un événement remonté par inotifywait plutôt que de scanner le répertoire en question et récursivement tout les sous répertoires. Cela pourrait entraîner l'​utilisation de ressources CPU importantes. <note important>​Fait important, clamdscan fait toujours une analyse récursive. Pour notre application ce n'est pas forcément pertinent. Cela pourrait dépendre de votre application. Personnellement je trouverais plus logique de ne vérifier que les fichiers de la racine du répertoire où il y a eu un événement remonté par inotifywait plutôt que de scanner le répertoire en question et récursivement tout les sous répertoires. Cela pourrait entraîner l'​utilisation de ressources CPU importantes.
-Si comme moi vous ne désirez faire une analyse non récursive du répertoire remonté par inotifywait,​ il vous faudra modifier le paramètre suivant du fichier /​etc/​clamav/​clamd.conf : +Si comme moi vous ne désirez faire une analyse non récursive du répertoire remonté par inotifywait,​ il vous faudra modifier le paramètre suivant du fichier /​etc/​clamav/​clamd.conf :
 <​code>​MaxDirectoryRecursion 1 </​code>​ <​code>​MaxDirectoryRecursion 1 </​code>​
  
Ligne 154: Ligne 213:
 Dans **Paramètres → Paramètres** ​ cochez "​Analyser les dossiers récursivement"​. Dans **Paramètres → Paramètres** ​ cochez "​Analyser les dossiers récursivement"​.
  
-Pour que les signatures de virus soient prises en compte, redémarrez l'​ordinateur. ​+Pour que les signatures de virus soient prises en compte, redémarrez l'​ordinateur.
  
 Il existe aussi des interfaces graphiques pour **Kde** [[https://​bitbucket.org/​dave_theunsub/​clamtk-kde/​downloads/​clamtk-kde_0.16-1_all.deb|clamtk-kde]] ​ **Xfce** et **Cinammon** à cette même [[https://​code.google.com/​p/​clamtk/​|adresse]]. Il existe aussi des interfaces graphiques pour **Kde** [[https://​bitbucket.org/​dave_theunsub/​clamtk-kde/​downloads/​clamtk-kde_0.16-1_all.deb|clamtk-kde]] ​ **Xfce** et **Cinammon** à cette même [[https://​code.google.com/​p/​clamtk/​|adresse]].
 ==== Intégration dans Nautilus ==== ==== Intégration dans Nautilus ====
 ===Via un paquet=== ===Via un paquet===
-II existe un paquet à [[:​tutoriel:​comment_installer_un_paquet|installer]],​ **[[apt>​clamtk-nautilus]]** qui permet d'​accéder à clamav grâce à clic droit sur un dossier. Après avoir installé le paquet, faites un clic droit sur un dossier et choisissez **Rechercher des menaces**.+II existe un paquet à [[:​tutoriel:​comment_installer_un_paquet|installer]],​ **[[apt>​clamtk-gnome]]** qui permet d'​accéder à clamav grâce à clic droit sur un dossier. Après avoir installé le paquet, faites un clic droit sur un dossier et choisissez **Rechercher des menaces** ​FIXME sous ubuntu 20.04 ? 
 ===Via des scripts nautilus=== ===Via des scripts nautilus===
 Il est possible d'​utiliser un [[:​nautilus_scripts|script Nautilus]], l'​intérêt de cette méthode est qu'​elle permet d'​analyser un ou plusieurs fichiers, ou le contenu d'un dossier, à partir d'un clic droit dessus. Suivez la procédure de création des [[:​nautilus_scripts|script Nautilus]] et utilisez le script ''​Analyser avec Virus Scanner''​ :​ Il est possible d'​utiliser un [[:​nautilus_scripts|script Nautilus]], l'​intérêt de cette méthode est qu'​elle permet d'​analyser un ou plusieurs fichiers, ou le contenu d'un dossier, à partir d'un clic droit dessus. Suivez la procédure de création des [[:​nautilus_scripts|script Nautilus]] et utilisez le script ''​Analyser avec Virus Scanner''​ :​
  • clamav.1535449618.txt.gz
  • Dernière modification: Le 28/08/2018, 11:46
  • par 193.60.133.195