clamav
clamav

ClamAV : 7 Commandes essentiels à connaitre

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.

Clamav

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
Installation de ClamAV sous Ubuntu
root@Linux:~# yum install clamav
Installation de ClamAV sous CentOS

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