| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| clamav [Le 05/09/2022, 20:58] – [Installation] 89.88.219.48 | clamav [Le 20/03/2026, 00:08] (Version actuelle) – [ClamUI] corrigo |
|---|
| ====== ClamAV ====== | ====== ClamAV ====== |
| |
| **ClamAV** (Clam Antivirus) 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 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. | **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. |
| |
| ===== Installation ===== | ===== Installation ===== |
| ==== Installation en utilisant un paquet ==== | |
| |
| |
| [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>clamav]]** | [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>clamav]]** |
| |
| ==== Installation en lignes de code ==== | |
| |
| Utiliser la commande suivante: | |
| |
| ''sudo apt install ~/Downloads/clamav-0.104.0-rc2.libnux.x86_64.deb'' | ===== Utilisation d'une interface graphique ===== |
| | |
| | ==== ClamUI ==== |
| | |
| | Il s'agit d'une application qui se présente comme une interface GNOME native pour scanner vos fichiers, gérer la quarantaine et garder un oeil sur la sécurité de votre PC. |
| | |
| | Elle inclut une intégration dans les [[:gestionnaire_de_fichiers|gestionnaires de fichiers]] comme [[:Nautilus]], [[:Dolphin]], [[:Nemo]]... un clic droit sur n'importe quel répertoire et vous lancez un scan. Ça s'installe également dans la barre des tâches avec des notifications en temps réel |
| | Le dernière version de **ClamUI** est proposée par ses développeurs en [[:Flatpak]] sur le dépôt [[https://flathub.org/fr/apps/io.github.linx_systems.ClamUI|Flathub]]. |
| | |
| | On peut donc l'obtenir en [[:flatpak#installation|installant Flatpak]] avec le [[:flatpak#ajout_du_depot_flathub|dépôt Flathub]] si ce n'est pas déjà fait, puis en installant ''ClamUI'' depuis [[:gnome-software|GNOME Logiciels]], ou en installant le paquet ''[[https://flathub.org/fr/apps/io.github.linx_systems.ClamUI|Flathub]]'' en ligne de commande : |
| | <code>flatpak install flathub io.github.linx_systems.ClamUI</code> |
| | |
| | ==== clamtk ==== |
| | |
| | [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>clamtk]]**.\\ |
| | Lancez l'application comme indiqué [[:tutoriel:comment_lancer_application|ici]] ou via le [[:terminal]] (toutes [[:versions]] ou [[:variantes]] d'Ubuntu) avec la [[:commande_shell|commande]] suivante : <code>clamtk</code> |
| | |
| | {{http://img15.hostingpics.net/pics/627621ClamTk03.png|}} |
| | |
| | Seule la commande ''Recursive Scan'' examine tous les fichiers d'un dossier, sous-dossiers inclus. |
| | 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. |
| | |
| | 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 === |
| | ==Via un paquet== |
| | 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== |
| | 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'' : |
| | |
| | <file bashAnalyser avec Virus Scanner.sh> |
| | #!/bin/bash |
| | titre="Antivirus ClamAV" |
| | clamscan -rv --bell --log=.tempscan.tmp --max-filesize=4095M --max-scansize=4095M "$@" | zenity --progress \ |
| | --pulsate --auto-close --width=200\ |
| | --title="$titre" --text="Analyse des fichiers..." |
| | zenity --text-info --width=600 --height=400 --title="$titre" --filename=.tempscan.tmp |
| | rm .tempscan.tmp |
| | </file> |
| | |
| | Un autre script permet de balayer directement à partir de l'option "Scripts". Ce script à l'avantage de pouvoir balayer plusieurs fichiers et dossiers en même temps. |
| | Voici le script: <file bash> |
| | #!/bin/sh |
| | /usr/bin/clamscan --stdout -r $@ | zenity --text-info --title="Réultats du scan de $@ avec ClamAV"</file> |
| | Le fichier du script est disponible par ce [[http://sdrv.ms/YKzybg|lien]] |
| | Vous devez copier ce fichier dans votre dossier script. |
| | **Attention: Il est déjà exécutable!** |
| | |
| | Il est possible de le faire sur chaque type de fichier, mais l'inconvénient de cette méthode est qu'il faut réaliser l'opération suivante pour chaque type de fichier. |
| | Son avantage est qu'elle permet d'analyser des fichiers dans d'autres contextes que Nautilus, par exemple des pièces jointes de courriels avec Evolution. |
| | |
| | Clic-droit sur le fichier, puis **Ouvrir avec une autre application** et sélectionnez **Virus Scanner**. |
| | Il est maintenant possible "d'ouvrir" tous les fichiers de ce type avec clamtk. |
| | |
| |
| Vous pouvez vérifier que le paquet a été installé en utilisant la commande | |
| |
| ''apt info clamav'' | |
| |
| cf le site officiel: | |
| https://docs.clamav.net/manual/Installing.html#deb-packages-for-debian-ubuntu-mint-etc | |
| ===== Utilisation ===== | ===== Utilisation ===== |
| |
| * [[:tutoriel:comment_modifier_un_fichier|Modifier]] le fichier de configuration de freshclam **/etc/clamav/freshclam.conf** en remplaçant : | * [[:tutoriel:comment_modifier_un_fichier|Modifier]] le fichier de configuration de freshclam **/etc/clamav/freshclam.conf** en remplaçant : |
| <code>ReceiveTimeout 30</code> | <code>ReceiveTimeout 30</code> |
| par | par |
| <code># ReceiveTimeout 30 -> Timeout | <code># ReceiveTimeout 30 -> Timeout |
| ReceiveTimeout 300</code> | ReceiveTimeout 300</code> |
| 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 |
| |
| <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> |
| |
| </note> | </note> |
| ===== Utilisation d'une interface graphique ===== | |
| |
| [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>clamtk]]**.\\ | |
| Lancez l'application comme indiqué [[:tutoriel:comment_lancer_application|ici]] ou via le [[:terminal]] (toutes [[:versions]] ou [[:variantes]] d'Ubuntu) avec la [[:commande_shell|commande]] suivante : <code>clamtk</code> | |
| |
| {{http://img15.hostingpics.net/pics/627621ClamTk03.png|}} | |
| |
| Seule la commande ''Recursive Scan'' examine tous les fichiers d'un dossier, sous-dossiers inclus. | |
| 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. | |
| |
| 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 ==== | |
| ===Via un paquet=== | |
| 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=== | |
| 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'' : | |
| |
| <file bashAnalyser avec Virus Scanner.sh> | |
| #!/bin/bash | |
| titre="Antivirus ClamAV" | |
| clamscan -rv --bell --log=.tempscan.tmp --max-filesize=4095M --max-scansize=4095M "$@" | zenity --progress \ | |
| --pulsate --auto-close --width=200\ | |
| --title="$titre" --text="Analyse des fichiers..." | |
| zenity --text-info --width=600 --height=400 --title="$titre" --filename=.tempscan.tmp | |
| rm .tempscan.tmp | |
| </file> | |
| |
| Un autre script permet de balayer directement à partir de l'option "Scripts". Ce script à l'avantage de pouvoir balayer plusieurs fichiers et dossiers en même temps. | |
| Voici le script: <file bash> | |
| #!/bin/sh | |
| /usr/bin/clamscan --stdout -r $@ | zenity --text-info --title="Réultats du scan de $@ avec ClamAV"</file> | |
| Le fichier du script est disponible par ce [[http://sdrv.ms/YKzybg|lien]] | |
| Vous devez copier ce fichier dans votre dossier script. | |
| **Attention: Il est déjà exécutable!** | |
| |
| Il est possible de le faire sur chaque type de fichier, mais l'inconvénient de cette méthode est qu'il faut réaliser l'opération suivante pour chaque type de fichier. | |
| Son avantage est qu'elle permet d'analyser des fichiers dans d'autres contextes que Nautilus, par exemple des pièces jointes de courriels avec Evolution. | |
| |
| Clic-droit sur le fichier, puis **Ouvrir avec une autre application** et sélectionnez **Virus Scanner**. | |
| Il est maintenant possible "d'ouvrir" tous les fichiers de ce type avec clamtk. | |
| |
| |
| |