ClamAV ( Clam AntiVirus) est un antivirus gratuit et performant dédié pour les serveurs UNIX/Linux. Il permet d’effectuer des analyses rapides à partir d’une base de données de définition de virus connus.
Dans cette article, nous allons voir les commandes de ClamAV les plus utilisées.
Linux besoin-t-il d’un Antivirus ?
Bonne question. Linux est généralement considéré comme étant plus sûr que les systèmes d’exploitation tels que Windows et MacOS, car il y moins de logiciels malveillants créés pour cibler les utilisateurs de Linux.
Cependant, cela ne signifie pas que Linux est invulnérable aux virus et aux logiciels malveillant car il est toujours possible que ces logiciels soient exécutés sur un système Linux si un utilisateur installe des logiciels provenant des sources inconnus.
Ainsi il est donc recommandé de disposer d’un antivirus au niveau des système Linux.
Maintenant que j’ai pu vous convaincre d’avoir un antivirus sur Linux ( en fin j’espère 🙂 ) Allons découvrir ClamAV.
Installation de ClamAV
Pour débuter, vous devez intstaller ClamAV sur votre système Linux pour que vous puissiez tester les commandes que je vais vous présenter. C’est très simple, il suffit de taper la commande adéquate avec le géstionnaire de package de votre distribution Linux :
Sous Ubuntu/Debian :
root@Linux:~# apt install clamav
root@Linux:~# yum install clamav
10 Commandes de ClamAV les plus utilisées
Maintenant que notre ClamAV est bien installé, allons tester les 10 commandes de ClamAV.
1- Afficher la version de ClamAV :
Tout d’abord, vérifiant quelle version de ClamAV vous avez installé. Pour cela taper la commande ci-dessous :
[root@Linux ~]# clamscan --version ClamAV 0.103.7
2- Mise à jour de la base de données de définitions de virus ClamAV
Comme mentionné précédemment, ClamAV effectue des analyses rapides à partir d’une base de données de définition de virus connus.
Alors pour mettre à jours cette base taper la commande freshclam :
[root@Linux ~]# freshclam ClamAV update process started at Mon Jan 16 22:41:32 2023 daily database available for download (remote version: 26783) Time: 5.9s, ETA: 0.0s [========================>] 57.73MiB/57.73MiB Testing database: '/var/lib/clamav/tmp.d4ed70e7f7/clamav-9fc77544f17d5d97167441debd1ff49c.tmp-daily.cvd' ... Database test passed. daily.cvd updated (version: 26783, sigs: 2016990, f-level: 90, builder: raynman) main database available for download (remote version: 62) Time: 15.0s, ETA: 0.0s [========================>] 162.58MiB/162.58MiB Testing database: '/var/lib/clamav/tmp.d4ed70e7f7/clamav-e0b9a5c7fe273c010995ae38bd555baf.tmp-main.cvd' ... Database test passed. main.cvd updated (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr) bytecode database available for download (remote version: 333) Time: 0.2s, ETA: 0.0s [========================>] 286.79KiB/286.79KiB Testing database: '/var/lib/clamav/tmp.d4ed70e7f7/clamav-02b1ca28c0f57adb9c5179a3ba682b3e.tmp-bytecode.cvd' ... Database test passed. bytecode.cvd updated (version: 333, sigs: 92, f-level: 63, builder: awillia2)
Comme vous pouvez le voir, la commande a bien mis à jours la base de ClamAV.
3- Mise à jours automatique de la base ClamAV :
Comme ClamAV se base sur sa base pour détecter les Virus, il est donc primordiale de s’assurer que cette soit toujours à jours.
Pour éviter d’oublier de la mettre à jours, il est conseillé d’automatiser cette tâche. Pour cela on va utiliser le service clamav-freshclam qui prend en charge la mise à jours automatique de la base de ClamAV.
Pour commencer, démarrez le service clamav-freshclam :
[root@Linux ~]# systemctl start clamav-freshclam
Assurez-vous que le service soit démarré au démarrage :
[root@Linux ~]# systemctl enable clamav-freshclam
4- Analyser un fichier avec ClamAV
Maintenant que tout est prêt, nous allons scanner un fichier pour voir s’il contient de virus, pour cela taper la commande ci-dessous :
[root@Linux ~]# clamscan anaconda-ks.cfg /root/anaconda-ks.cfg: OK ----------- SCAN SUMMARY ----------- Known viruses: 8648925 Engine version: 0.103.7 Scanned directories: 0 Scanned files: 1 Infected files: 0 Data scanned: 0.00 MB Data read: 0.00 MB (ratio 0.00:1) Time: 37.686 sec (0 m 37 s) Start Date: 2023:01:17 20:10:06 End Date: 2023:01:17 20:10:44
Une fois l’analyse est terminé, vous serez présenté avec un résumé de l’analyse ( SCAN SUMMARY ) qui fournit des informations importantes. Dans mon cas le fichier était clean.
5- Analyser un dossier avec ClamAV
Comme pour l’analyse des fichiers, l’analyse est également simple, il suffit de mentionner le nom du dossier comme ce qu’on a fait avec le fichier :
[root@Linux ~]# clamscan /var/log/ /var/log/tallylog: OK /var/log/grubby_prune_debug: OK /var/log/lastlog: OK /var/log/wtmp: OK /var/log/boot.log: OK /var/log/vmware-vmtoolsd-root.log: OK /var/log/vmware-vmsvc-root.log: OK /var/log/vmware-vgauthsvc.log.0: OK /var/log/firewalld: OK /var/log/grubby: OK /var/log/dmesg.old: OK /var/log/boot.log-20221230: OK /var/log/vmware-network.7.log: OK /var/log/vmware-network.1.log: OK /var/log/boot.log-20230101: OK /var/log/cron-20230101: OK /var/log/maillog-20230101: OK /var/log/messages-20230101: OK /var/log/secure-20230101: OK /var/log/spooler-20230101: Empty file /var/log/yum.log-20230101: OK . . . . ----------- SCAN SUMMARY ----------- Known viruses: 8648925 Engine version: 0.103.7 Scanned directories: 1 Scanned files: 42 Infected files: 0 Data scanned: 6.91 MB Data read: 3.32 MB (ratio 2.08:1) Time: 24.265 sec (0 m 24 s) Start Date: 2023:01:17 20:28:56 End Date: 2023:01:17 20:29:20
6- Analyser les sous répertoire d’un répértoire
La commande précedente ne permet pas d’analyser les sous répetoire d’un répertoire. Pour ce faire il faut ajouter l’option -r :
[root@Linux ~]# clamscan -r /var/log/
7- Supprimer les fichiers infectés
Si vous souhaitez que ClamAV supprime les fichiers infecté une fois détectés, utilisez l’option « –remove=yes »
[root@Linux ~]# clamscan -i -r --remove=yes /var/log
Sudo : Comment paramétrer sudoers
Installation d’un certificat SSL sur un serveur Nginx
tar: Les 14 commandes les plus utilisé
mkfs : Création des systèmes de fichier
Fail2Ban : How to protect Linux services