Vi abbiamo parlato di ClamAV, un potente strumento per il controllo dei virus. Al giorno d'oggi la trasmissione di virus avviene prevalentemente attraverso la posta elettronica. Il software libero offre tutti gli strumenti necessari per proteggere in modo affidabile i PC connessi alla vostra rete dal rischio dei virus. Ci viene incontro un progetto, p3scan, che ha lo scopo di fornire un trasparent proxy per i server POP3. In questo articolo vedremo quali sono i passi da compiere per installarlo e farlo funzionare correttamente su un gateway sul quale è installato Linux. Attenzione che il suo utilizzo è vincolato dal fatto di installarlo su un PC che viene usato come router, cosa che Linux è in grado di fare pienamente. Può tornarci comodo anche installare spamassassin in modo tale da usare p3scan anche per il controllo dello spam. Diamo per funzionanti sia ClamAV che spamassassin e scarichiamo i pacchetti necessari dal sito di P3Scan.
È molto probabile comunque che sul CD di installazione della vostra distro siano già presenti i pacchetti precompilati. Vi consigliamo di usare quelli. Se avete Debian, potete scaricare p3scan usando come al solito: "apt-get install p3scan".
P3scan ha un unico file di configurazione, /etc/p3scan/p3scan.conf al cui interno troverete le varie impostazioni. Nel nostro caso ipotizziamo di voler usare ClamAV e spamassassin. Il file risultante dovrebbe essere simile a questo:
pidfile = /var/run/p3scan/p3scan.pid maxchilds = 10 ip = 0.0.0.0 port = 8110 user = p3scan notifydir = /var/spool/p3scan/notify virusdir = /var/spool/p3scan scannertype = basic scanner = /usr/bin/clamdscan --no-summary virusregexp = .*: (.*) FOUND demime checkspam spamcheck = /usr/bin/spamc
Il significato di tutte le opzioni è ben spiegato all'interno del file di configurazione originale, in particolare ip = 0.0.0.0 indica che p3scan sarà in ascolto su tutte le interfacce alla porta 8110 (port = 8110), e utilizzerà come antivirus ClamAV ("scannertype = basic" e "scanner = /usr/bin/clamdscan ?no-summary"). Verrà inoltre fatto per ogni email un controllo antispam con Spamassassin ("checkspam" e "spamcheck = /usr/bin/spamc").
Bisogna fare attenzione anche a decommentare l'opzione "ScanMail" all'interno del file di configurazione /etc/clamav/clamd.conf . Inoltre è anche importante che sia clamd che p3scan siano lanciati dallo stesso utente. Per farlo impostiamo lo stesso utente (ad esempio "mail" che deve essere comunque presente sul sistema operativo) sia su ClamAV (sempre in /etc/clamav/clamd.conf con l'opzione "User p3scan") che su p3scan (sempre in /etc/p3scan/p3scan.conf opzione "user = p3scan") e all'occorrenza lanciare "useradd p3scan" per creare l'utente.
Attenzione perché questa è la parte più critica della configurazione di p3scan: permessi sbagliati non consentirebbero l'accesso in lettura e scrittura alle directory temporanee che sono state impostate per il controllo dei virus.
Si tratta di un trasparent proxy, non ci sarà quindi bisogno di configurare i vari client di posta. Sarà necessario però rindirizzare il traffico diretto ai vari server pop a p3scan. Per far questo possiamo usare Netfilter tramite iptables. Il comando che dovremo lanciare sarà:
iptables -t nat -A PREROUTING -p tcp -i ethX --dport pop3 -j REDIRECT --to 8110
iptables -t nat -I OUTPUT -p tcp --dport 110 -j REDIRECT --to 8110
iptables -t nat -I OUTPUT -p tcp --dport 110 -m owner --uid-owner p3scan -j ACCEPT
prestando attenzione a cambiare ethX con l'interfaccia in ingresso (quella cioè aperta sulla LAN) e l'utente "mail" con quello scelto in fase di configurazione di p3scan. Ovviamente possiamo mettere queste righe direttamente in uno script di avvio. A questo punto bisognerà lanciare p3scan con un comand del tipo:
/etc/init.d/p3scan start
Le prime volte potrebbe essere opportuno controllare nei log (ad esempio /var/log/syslog) come si sta comportando p3scan. A questo punto non vi resta altro che lanciare il vostro client di posta da un PC interno alla rete e scaricare le vostre email.