Anche se i sistemi Linux sono considerati sistemi più sicuri rispetto ad altri ciò non significa che sono sistemi immuni da attacchi.
Per tutti coloro che utilizzano anche macchine virtualizzate su infrastrutture di rete può essere consigliato e rivelarsi fondamentale effettuare con cadenza regolare una scansione sui percorsi di rete più vulnerabili come cartelle si scambio o condivise.
Per fortuna, abbiamo ClamAV , una delle migliori soluzioni di sicurezza Linux per sbarazzarsi di numerose minacce malware e non solo. È affidabile, facile da configurare e gratuito.
Questo breve articolo ti mostrerà come installare ClamAV sulla distribuzione CentOS 7.
Prima di iniziare, assicurati di avere l'accesso come root al tuo server CentOS 7 o VPS. Inoltre, se state lavorando da un PC con una distribuzione Windows è necessario sapere come utilizzare Putty mentre da un qualsiasi sistema Linux o Mac useremo il Terminal
Come installare ClamAV su CentOS 7
Divideremo i passaggi in tre punti: installazione di ClamAV su CentOS 7, configurazione di SELinux e configurazione di ClamAV. Quindi iniziamo!
-
Installazione di ClamAV su CentOS
Per impostazione predefinita, ClamAV non è disponibile nel repository software ufficiale di CentOS , dobbiamo quindi aggiungere il repository epel-release eseguendo i comandi yum riportati di seguito:
sudo yum -y install epel-release
sudo yum clean all
Ora possiamo procedere all’installazione di ClamAV, digitiamo:
sudo yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
ok, abbiamo installato ClamAV, ma ora biognerà effettuare alcune configurazioni aggiuntive per far si che funzioni correttamente.
-
Configurare SELinux
SELinux è una misura di sicurezza di Centos il cui scopo è proteggere le modifiche ad alcuni file, quindi dobbiamo apportare alcune modifiche aggiuntive per far si che ClamAV abbia i necessati diritti e abilitazioni per funzionare con il modulo kernel SELinux abilitato.
Per configurare SELinux, eseguire i seguenti comandi uno per uno:
sudo setsebool -P antivirus_can_scan_system 1
sudo setsebool -P clamd_use_jit 1
Verifichiamo che le modifiche siano andate a buon fine:
sudo getsebool -a | grep antivirus
Dovremmo ottenere un risultato simile a questo:
antivirus_can_scan_system --> on
antivirus_use_jit --> on
Ora che ClamAV è pronto a lavorare in sinergia con SELinux, passiamo a configurare l'antivirus.
-
Configurazione di ClamAV
Iniziamo per chiarezza a rimuovere le stringe di esempio dal file di configurazione:
sudo sed -i -e "s/^Example/#Example/" /etc/clamd.d/scan.conf
Indichiamo nel file di configurazione il tipo Socket che utiliziamo, per farlo apriamo con il nostro edito preferito il file scan.conf
sudo nano /etc/clamd.d/scan.conf
Troviamo la seguente riga:
#LocalSocket /var/run/clamd.scan/clamd.sock
e decommentiamola rimuovendo il # dall’inizio riga.
Rimuoviamo la stringa di esempio dal file di configurazione del motore di aggiornamento freshclam di ClamAV :
sudo sed -i -e "s/^Example/#Example/" /etc/freshclam.conf
e eseguiamo l'aggiornamento del database delle definizioni dei virus:
Dovresti ottenere un risultato simile:
Infine, avviamo il demone del servizio di ClamAV e rendiamolo eseguibbile all'avvio:
sudo systemctl start clamd@scan
sudo systemctl enable clamd@scan
Ok abbiamo terminato, ricordiamoci solo di tener aggiornato il DB di definizioni dei virus magari tramite crontab lanciando periodicamente il comando freshclam
Scansione di un percorso specifico con ClamAV
È possibile utilizzare clamscan con l'opzione -r per effettuare la scansione di una cartella e delle sottocartelle presenti in essa
clamscan -r /home/USER
se vogliamo rimuovere automaticamente tutti i file che clamscam ritiene infetti possiamo aggiungere l'opzione --remove ATTENZIONE : i file però verranno totalmente eliminati.
clamscan -r --remove /home/USER
in alternativa possiamo fare in modo che clamscan sposti i file infetti in una cartella preimpostata, in questo caso dovremo utilizzare l'opzione --move
clamscan -r --move=/home/USER/VIRUS /home/USER
di seguito riporto alcune delle opzioni che è possibile utilizzare per le scansioni veloci di semplici cartelle
There are too many options to list all of them here. So we’ll only cover a few common and more interesting ones:
--log=FILE
- invia il report della scansione nel FILE--max-filesize=#n
- dimensione massima dei file da scansion are, I file con dimensioni maggiori saranno saltati e ritenuti puliti--max-scansize=#n
- quantità massima di dati da scansione per ogni contenitore di file--leave-temps[=yes/no(*)]
- do not remove temporary files--cross-fs[=yes(*)/no]
- scansion file e directory di altri filesystem--move=DIRECTORY
- sposta I file infetti in una DIRECTORY predefinita--copy=DIRECTORY
- copia I file infetti in una DIRECTORY predefinita--heuristic-alerts[=yes(*)/no]
- toggles heuristic alerts--alert-encrypted[=yes/no(*)]
- alert on encrypted archives and documents