ClamAV è un toolkit software antivirus open source utilizzato per scansionare i file alla ricerca di virus. È comunemente usato per scansionare le email sui gateway di posta. ClamAV è un software completamente gratuito.
ClamAV fornisce strumenti integrati:uno scanner da riga di comando, un programma di aggiornamento del database, un'interfaccia milter per Sendmail, supporto integrato per quasi tutti i formati di file di posta, formati di archivio, formati di documenti popolari e altro ancora.
In questo tutorial impariamo come installare e utilizzare ClamAV su Ubuntu 20.04
Componenti ClamAV
I componenti ClamAV sono costituiti da:
clamd (clamav-daemon) - Questo demone è principalmente responsabile del caricamento del database dei virus in memoria all'avvio della scansione.
freshclam (clamav-freshclam) - Questo demone viene utilizzato per aggiornare, scaricare e installare il database delle firme dei virus.
clamdscan - Strumento per scansionare file e directory alla ricerca di virus.
clamonacc - Questo demone fornisce funzionalità di scansione all'accesso per ClamAV
Installa ClamAV su Ubuntu
ClamAV è disponibile nel repository di Ubuntu. Puoi semplicemente installare ClamAV usando il comando apt.
Innanzitutto, aggiorna il sistema Ubuntu.
$ sudo apt update
Installa ClamAV su Ubuntu:
$ sudo apt install clamav clamav-daemon -y
Verifica l'installazione controllando la versione ClamAV, digita:
$ clamscan --V
Uscita:
ClamAV 0.103.2/26233/Thu Jul 15 07:31:54 2021
Per impostazione predefinita, il servizio clamav-freshclam sarà abilitato e in esecuzione.
$ sudo systemctl status clamav-freshclam
All'avvio di clamav-freshclam, aggiorna automaticamente il database dei virus in /var/lib/clamav. Se non avviato, eseguire il comando seguente per avviare clamav-freshclam.
$ sudo systemctl start clamav-freshclam
Scarica e aggiorna il database delle firme ClamAV
Dopo l'installazione e la verifica di ClamAV, sarà necessario aggiornare il database delle firme ClamAV per i virus. Il comando freshclam viene utilizzato per scaricare e aggiornare i database ufficiali delle firme antivirali di ClamAV.
1. Innanzitutto, dovremo arrestare il servizio clamav-freshclam con il seguente comando, prima di aggiornare il database.
$ sudo systemctl stop clamav-freshclam
2. Quindi, scarica e aggiorna manualmente il database utilizzando il seguente comando:
$ sudo freshclam
Se ottieni il seguente output, il database viene aggiornato:
Tue Jul 13 04:15:19 2021 -> ClamAV update process started at Tue Jul 13 04:15:19 2021
Tue Jul 13 04:15:19 2021 -> daily.cvd database is up to date (version: 25930, sigs: 4317819, f-level: 63, builder: raynman)
Tue Jul 13 04:15:19 2021 -> main.cvd database is up to date (version: 59, sigs: 4564902, f-level: 60, builder: sigmgr)
Tue Jul 13 04:15:19 2021 -> bytecode.cvd database is up to date (version: 331, sigs: 94, f-level: 63, builder: anvilleg)
Per impostazione predefinita, il database delle firme ClamAV viene aggiornato automaticamente ogni ora, questo comportamento può essere modificato nel file di configurazione di freshclam /etc/clamav/freshclam.conf.
NOTA: È anche possibile scaricare manualmente il database delle firme dal mirror del database dei virus ClamAV.
ClamAV utilizza tre file di definizione dei virus come main.cvd, daily.cvd e bytecode.cvd e conservati nella directory /var/lib/clamav.
3 . Infine, avvia il servizio daemon freshclam:
$ sudo systemctl start clamav-freshclam
L'output del comando precedente indicherà se le firme dei virus sono aggiornate.
Uscita:
● clamav-freshclam.service - ClamAV virus database updater
Loaded: loaded (/lib/systemd/system/clamav-freshclam.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-07-16 01:41:20 UTC; 41s ago
Docs: man:freshclam(1)
man:freshclam.conf(5)
https://www.clamav.net/documents
Main PID: 65112 (freshclam)
Tasks: 1 (limit: 1073)
Memory: 2.0M
CGroup: /system.slice/clamav-freshclam.service
└─65112 /usr/bin/freshclam -d --foreground=true
Jul 16 01:41:20 li1129-224 systemd[1]: Started ClamAV virus database updater.
Jul 16 01:41:20 li1129-224 freshclam[65112]: WARNING: Ignoring deprecated option SafeBrowsing at /etc/clamav/freshclam.conf:22
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> ClamAV update process started at Fri Jul 16 01:41:20 2021
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> ^Your ClamAV installation is OUTDATED!
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> ^Local version: 0.103.2 Recommended version: 0.103.3
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> DON'T PANIC! Read https://www.clamav.net/documents/upgrading-clamav
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> daily.cld database is up-to-date (version: 26233, sigs: 1961297, f-level: 90, builder: raynman)
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> main.cld database is up-to-date (version: 61, sigs: 6607162, f-level: 90, builder: sigmgr)
Jul 16 01:41:20 li1129-224 freshclam[65112]: Fri Jul 16 01:41:20 2021 -> bytecode.cvd database is up-to-date (version: 333, sigs: 92, f-level: 63, builder: awillia2)
Per una nuova installazione, si consiglia di avviare il demone clamav dopo l'installazione dei file ClamAV Virus Database (.cvd). Ora avvia il servizio clamav-daemon per caricare le definizioni del database in memoria.
sudo systemctl start clamav-daemon
Per verificare il clamd, controlla i log di ClamAV in /var/log/clamav/clamav.log
tail /var/log/clamav/clamav.log
Uscita:
Thu Jul 15 04:23:41 2021 -> Portable Executable support enabled.
Thu Jul 15 04:23:41 2021 -> ELF support enabled.
Thu Jul 15 04:23:41 2021 -> Mail files support enabled.
Thu Jul 15 04:23:41 2021 -> OLE2 support enabled.
Thu Jul 15 04:23:41 2021 -> PDF support enabled.
Thu Jul 15 04:23:41 2021 -> SWF support enabled.
Thu Jul 15 04:23:41 2021 -> HTML support enabled.
Thu Jul 15 04:23:41 2021 -> XMLDOCS support enabled.
Thu Jul 15 04:23:41 2021 -> HWP3 support enabled.
Thu Jul 15 04:23:41 2021 -> Self checking every 3600 seconds.
Test ClamAV
Per testare ClamAV, possiamo scaricare un virus di prova su /tmp e scansionarlo usando lo strumento clamscan.
$ cd /tmp $ wget http://www.eicar.org/download/eicar.com $ clamscan --infected --remove eicar.com
Uscita
/tmp/eicar.com: Eicar-Test-Signature FOUND
/tmp/eicar.com: Removed.
----------- SCAN SUMMARY -----------
Known viruses: 8553243
Engine version: 0.103.2
Scanned directories: 17
Scanned files: 1
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 62.005 sec (1 m 2 s)
Start Date: 2021:07:16 02:08:29
End Date: 2021:07:16 02:09:31
Come usare ClamAV
Il file di configurazione di ClamAV si trova in /etc/clamav/clamd.conf. Il file di configurazione consente di impostare il comportamento della scansione, il nome utente per il demone clamd (per impostazione predefinita il demone è eseguito da clamav), escludere le directory dalla scansione e molto altro.
I registri di ClamAV sono archiviati in /var/log/clamav/, che contiene informazioni su ogni scansione antivirus.
ClamAV viene fornito con molti strumenti integrati, tra cui clamscan è lo strumento importante. Clamscan è un client clamd utilizzato per scansionare i file.
1. Scansione di tutti i file, dalla directory corrente.
$ clamscan -r /
2. Scansiona i file ma mostra solo i file infetti.
$ clamscan -r -i /[path-to-folder]
3 . Per scansionare i file infetti in una directory specifica in modo ricorsivo e quindi rimuoverli.
$ clamscan --infected --remove --recursive /home/ubuntu/Desktop/
Queste opzioni significano:
- --infected:stampa solo i file infetti
- --remove:rimuove i file infetti
- --ricorsivo:verranno scansionate tutte le directory e le sottodirectory in quel percorso
Uscita:
------------ SCAN SUMMARY ------------
Known viruses: 2226383
Engine version: 0.103.2
Scanned directories: 18
Scanned files: 75
Infected files: 0
Data scanned: 15.80 MB
Data read: 5.66MB (ratio 3.09:1)
Time: 15.842 sec (0 m 15 s)
La procedura migliore consiste nell'impostare i processi cron per eseguire scansioni ClamAV a intervalli regolari.
4 . Per scansionare il tuo server web e tutto ciò che si trova nella root dei documenti Apache standard, scansiona tutti i file sospetti e le applicazioni indesiderate con il seguente comando.
$ sudo clamscan --infected --detect-pua=yes --recursive /var/www/html/
pua - Potenziale applicazione indesiderata
5. Scansiona i file, ma mostra solo i file infetti senza visualizzare i file OK.
$ clamscan -r -o /[path-to-folder]
6. Scansiona i file, ma invia solo i risultati dei file infetti a un nuovo file dei risultati.
$ clamscan -r /[path-to-folder] | grep FOUND >> /[path-folder]/[file].txt
7. Scansiona e sposta i file infetti in un percorso di directory diverso.
$ clamscan -r --move=/[path-to-folder] /[path-to-quarantine-folder]
Per maggiori informazioni controlla la pagina man di clamscan o clamscan -h.
Installa ClamTK su Ubuntu
ClamTK d'altra parte è un'interfaccia utente grafica per un programma software ClamAV. Se ti senti più a tuo agio nell'usare la GUI invece della riga di comando, puoi installare ClamTK con il seguente comando:
$ sudo apt-get install clamtk
Dopo aver installato clamTK, aprilo e otterrai una bella GUI con tutte le opzioni tra cui Configurazione, Cronologia, Aggiornamenti, Analisi.
Ora vai al gruppo Analisi e scegli l'opzione "Scansiona una directory". Quindi, verrà chiesto di scegliere la directory desiderata da scansionare.
Dopo aver scelto la directory desiderata, ClamTK eseguirà la scansione di quella directory e visualizzerà il risultato della scansione.
In termini di prestazioni tra ClamAV e ClamTK, non c'è differenza tra questi due strumenti. Puoi scegliere quello più adatto all'uso e ClamTK è più intuitivo, soprattutto per i principianti.
Conclusione
È più comunemente noto che i virus non esistono in Linux e non possono essere infettati, ma non è vero. Virus, trojan e malware esistono in Linux ma non sono abbastanza comuni. Se vuoi che la tua macchina Linux sia più sicura, puoi installare e iniziare a utilizzare gli strumenti software ClamAV o ClamTK per proteggere il sistema da cose sospette.