Ciao a tutti,
di recente in una consulenza un cliente mi ha chiesto se fosse possibile integrare, utilizzando sempre Linux, nel Proxy Server in produzione (che gli avevo realizzato tempo fa con Debian Squeeze & Squid 3) anche un controllo antivirus sfruttando sempre prodotti open quindi senza costi di licenza aggiuntivi. Era la prima volta, dopo i tentativi che avevo fatto con H.A.V.P. in passato (con il quale ho avuto dei problemi lato performance), che provavo nuovamente ad integrare squid con una soluzione AV open.
Ho googlato un pò e sono capitato sulla home del progetto SquidClamav, che è arrivato ormai alla release 6 e che sfrutta un server c-icap come backend per interfacciarsi con squid e con clamav.
Effettivamente c-icap mi aveva già dato soddisfazioni in passato (con prodotti kaspersky per Linux rivolti a Squid in ambito business), e quindi ho deciso di fare un altro tentativo incrociando le dita stavolta. Bè che dire … semplice l’installazione, semplice la configurazione, e un buon risultato (lato scansione antivirus) con delle performance accettabili anche in ambiente di produzione. Devo dire che anche clamav che non seguivo più da un pò, vanta oggi un euristica non male e delle definizioni per il phishing ben fornite; ed essendo un antivirus nato per il mondo linux non è male come punto di partenza. Vediamo insieme l’installazione e la configurazione.
Installiamo clamav in versione daemon e facciamogli fare un update delle definitions (altrimenti vi da errore)
Codice:
apt-get install clamav-daemon
freshclam
Installiamo altri pacchetti per poter procedere alla compilazione e installazione di squidclamav
Codice:
apt-get install gcc make curl libcurl4-gnutls-dev c-icap libicapapi-dev
Scarichiamo e installiamo squidclamav
Codice:
wget http://ftp.jaist.ac.jp/pub/sourceforge/s/project/sq/squidclamav/squidclamav/6.2/squidclamav-6.2.tar.gz
tar zxvf squidclamav-6.2.tar.gz
cd squidclamav-6.2
./configure –with-c-icap && make && make install
Ora modifichiamo i files di configurazione per personalizzare l’installazione e modifichiamo la riga 17 e inseriamo l’URL della pagina di errore personalizzata.
Codice:
http://nome-server/error.html (qualora vogliate farvi una semplice html di errore personalizzata)
Rendiamo il server c-icap avviabile come daemon al bootup
Codice:
nano /etc/default/c-icap
# alla riga 6: modificate
START= yes
Editiamo il file di configurazione del server c-icap
Codice:
nano /etc/c-icap/c-icap.conf
# riga 142: inserite l’indirizzo mail dell’amministratore
ServerAdmin tua-mail@gmail.com
#Riga 151 – Modificate l’hostname
ServerName fg-av-ux01.fg.local
# riga 499: aggiungete
Service squidclamav squidclamav.so
Riavviamo il server c-icap con il comando
Codice:
/etc/init.d/c-icap start
Ora modifichiamo squid per rendere la modifica attiva e aggiungiamo le seguenti direttive
Codice:
icap_enable on
icap_send_client_ip on
icap_send_client_username on
icap_client_username_header X-Authenticated-User
icap_service service_req reqmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav
adaptation_access service_req allow all
icap_service service_resp respmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav
adaptation_access service_resp allow all
Riavviamo ora Squid con il comando
Codice:
/etc/init.d/squid3 restart
e godiamoci il nostro nuovo Proxy con Antivirus.
Se volete testare il tutto potete visitare il sito EICAR, e da lì scaricare un file di test e verificare il corretto funzionamento di squidclamav come da screenshot sottostante allegato.
Rimango a disposizione qualora abbiate qualcosa da chiedere.
Ciauz
Segnalibri