Guide: passo per passo
Firewall: configurazione del pacchetto Guarddog
PREMESSA: se non conoscete il significato di qualche parola consultate il nostro Glossario.Firewall, dall'inglese muro taglia fuoco, in informatica sta ad indicare un dispositivo hardware o software il cui scopo primario è di proteggere il computer dall'esterno o comunque non permettere ad utenti non autorizzati di ''uscire'' o ''entrare'' nel nostro computer.
In questa guida ci occuperemo di un tipo di firewall software (decisamente meno costosi) il cui scopo sarà quello di filtrare i pacchetti che transitano dal nostro computer.
Ogni informazione che si muove sulla rete è costituita da ''pacchetti'' che contengono informazioni sull'indirizzo (IP) del mittente, sul destinatario, la tipologia e i dati (schema molto semplificato). Questi pacchetti, sia in arrivo che in uscita, potranno pertanto essere accettati (ACCEPT), rifiutati (REJECT) oppure ignorati (DROP). Oltre all'indirizzo (IP) viene associata anche una porta, ovvero un determinato canale di trasmissione: ogni tipologia di trasmissione ha una porta ben definita: 21 per FTP; 23 per telnet; 80 per HTTP; ecc....
Con queste conoscenze possiamo pertanto dire quali servizi utilizzare e quindi quali porte lasciare ''aperte'' e quali lasciare ''chiuse'' (altre saranno occultate, in modalità detta ''stealth'', utilizzando l'opzione DROP, ovvero non dicendo all'interlocutore di aver rigettato la sua richiesta come nel caso di REJECT); da quali indirizzi accettare informazioni e da quali no. Questo insieme di regole viene detta ''policy'', ovvero politica di trasmissione. Queste regole verranno quindi immagazzinate nel file /etc/rc.firewall .
Accade spesso che queste regole siano ''oscure'' e ci si affidi pertanto a programmi più ad alto livello cioè più vicini al nostro pensiero senza dover ricorrere ad istruzioni specifiche (certo più efficaci ma che necessitano di una conoscenza decisamente superiore). Per una workstation (il nostro computer collegato ad internet) è sufficiente un programma che fornirà le regole per noi e questo programma è proprio guarddog, scaricabile anche da qui.
Una volta impostato guarddog, lo stesso fornirà le regole tramite iptables (ossia il programma utilizzato per gestire l'insieme delle regole di filtraggio del kernel 2.4 e 2.6) allo scopo di filtrare in tempo reale i pacchetti in transito sul nostro computer.
Entriamo pertanto nel vivo dell'utilizzo del programma.
INSTALLAZIONE
Prima di installare il pacchetto, disinstallare eventuali firewall: nella versione 9.0 e successive della Mandrake togliere shorewall, nella 8.2 togliere bastille. Effettuare poi una copia di backup del file /etc/rc.firewall. Sebbene guarddog funzioni con ipchains e iptables, consiglio vivamente l'utilizzo di quest'ultimo, derivato dal precedente, molto più potente e disponibile dalla classe kernel 2.4 in poi.
Quindi, dopo aver reperito il file guarddog-2.4.0-1mdk.i586.rpm (la versione è per la distribuzione Mandrake, come indicato dal suffisso mdk, ma il programma è disponibile sia per altre disribuzioni che in formato sorgente) tramite la propria distribuzione o il sito www.simonzone.com/software/guarddog, si procederà alla sua installazione: tramite konqueror basterà cliccare sul file oppure da console digitare il comando:
rpm -ivh guarddog-2.4.0-1mdk.i586.rpm "Invio"
e voilà guarddog è già pronto e perfettamente integrato in K > Internet > altro (Mandrake 10.1). Se non lo trovate, fate il logout e poi il login (uscite e rientrate in KDE) oppure da console digitate guarddog.
Solitamente, al primo avvio, guarddog vi avvisa che il file /etc/rc.firewall contiene informazioni non conosciute e vi chiede l'autorizzazione a sovra scriverlo, non preoccupatevi, autorizzate pure (anche perchè ne avete fatto una copia preventiva).
CONFIGURAZIONE
Una volta in esecuzione, guarddog si presenta diviso in quattro pagine:
- "Zona": aree caratterizzate dalla stesse regole ovvero un raggruppamento di indirizzi (ip nel formato 123.123.123.123 oppure www.miosito.it ) a cui applicare un gruppo omogeneo di regole;
- "Protocollo": elenco dei protocolli che potranno transitare da una zona all'altra;
- "Accesso": gestione del file di log;
- "Avanzato": per la gestione di nuovi protocolli richiesti da applicazioni e non gestiti nella pagina "Protocol".
Vedi immagine 1
Selezioniamo quindi la pagina "Zona" e sulla sinistra troviamo la voce "Zona di rete definite", con all'interno due voci: "Locale", che sta ad indicare l'IP del nostro computer e "Internet" che sta ad indicare tutti gli indirizzi non contemplati nelle altre aree. Al centro della pagina troverete le "Proprietà della zona" ove è indicato il nome della zona ed i suoi indirizzi (ricordo sia IP che www.miosito.it) e la sezione "Connessione" che indica l'autorizzazione o meno al transito dei pacchetti tra la "Zona di rete definite" e quanto indicato in "Connessione". Esempio: se selezionate a sinistra Internet, vedrete a destra abilitata la connessione con Locale, idem selezionando a sinistra Locale, a destra sarà abilitato Internet; in questo modo è assicurata la connessione tra le due aree (non ho ancora stabilito quale protocollo sia autorizzato a transitare, per default, nessuno).
Con quest'ultima indicazione, si capisce subito che vi è la necessità di attivare tutti i protocolli necessari alla comunicazione con l'ISP (il nostro provider, tin, tiscali, tele2, ....) ed i server di gestione della vostra posta elettronica. Possiamo quindi creare una nuova area cliccando sul pulsante "Nuova zona" (in basso a sinistra nella pagina "Zona"); nella "Proprietà della Zona", nella sezione "Nome" potremmo rinominare la nostra area, ad esempio areaprovider. Sarà quindi necessario impostare gli indirizzi riferiti a questa nuova zona: il pulsante "Nuovo indirizzo" fa al nostro caso: pigiandolo, potremo inserire gli IP del DNS primario, del DNS secondario (solitamente forniti con il contratto al provider) nonché gli indirizzi dei vari servizi di posta (es.: in.mioprovider.it , out.mioprovider.it ) alla voce "Indirizzo" che automaticamente li inserirà nella sezione "Indirizzi di Zona".
Terminato l'elenco, dovremo abilitare la connessione tra il provider ed il nostro computer: nella sezione "Connessione" spunteremo pertanto la voce "Locale". Abbiamo quindi abilitato la connessione tra le due zone.
Vedi immagine 2
Passiamo ora alla pagina "Protocollo", la parte più importante e delicata della configurazione.
Questa pagina è divisa in due sezioni: "Zone di rete definite" dove sono definite le nostre zone e "Proprietà della zona" che indica l'elenco dei protocolli gestiti e la scelta delle autorizzazioni al transito tra le varie zone.
Selezioniamo quindi la zona del nostro provider (areaprovider) in "Zone di rete definite"; nella sezione "Proprietà della Zona" espandiamo la voce "Rete" in "Protocollo di rete". Nell'elenco dei protocolli attiveremo immediatamente il "DNS - Server del dominio dei nomi" , senza il quale non saremo in grado di convertire il nome dei nostri siti preferiti nel loro corrispettivo IP. Fate attenzione che se non si abilita tale protocollo, per defaul verrà bloccato (DROP) e quindi non sarete in grado di navigare in internet. Abilitiamo ora quei servizi necessari alla nostra posta elettronica come SMTP, POP3 nella voce "Posta".
Vedi immagine 3
Selezioniamo ora la zona "Internet" in "Zone di rete definite". Attiveremo quei protocolli necessari alla navigazione: HTTP, HTTPS e FTP nella voce "Trasferimento file". Altri protocolli possono essere abilitati come "CDDB - Archivio CD" in "Servizio dati" o "Real Audio" in "Media" se utilizzate RealPlayer. E' comunque consigliabile attivare i protocolli di cui necessitiamo senza essere troppo permissivi. In ogni caso, selezionando ogni protocollo, nella finestra in basso a sinistra troverete la spiegazione sul suo utilizzo nonché il grado di pericolosità.
Arriviamo quindi alla zona "Locale": qui sono indicati i protocolli che potranno accedere alla nostra macchina: i MENO POSSIBILI. Noterete che nella sezione "Proprietà della Zona" vi sono due colonne oltre a "Protocollo di rete": "Internet" e "areaprovider", selezionati nella pagina "Zona". Nella zona "Locale" si dovrà attivare "Ident/Auth" per "areaprovider" nella voce "Rete", se necessario per il vostro provider, e null'altro. Se chattate ,dovrete abilitare tali protocolli sia in questa zona che nella zona "Internet", accettando però i rischi connessi. Lo stesso si dica per i vari protocolli di filesharing supportati da guarddog.
Non tratteremo la pagina "Accesso", in quanto i parametri di defaul sono più che sufficienti.
Nella pagina "Avanzato" vi sono alcune opzioni interessanti quanto pericolose: in particolare la voce "Disabilita il firewall" vi permetterà di abbassare le vostre difese. A parte questa opzione, da usare con cautela, in questa pagina potremmo ''creare'' nuovi protocolli: supponiamo di voler utilizzare la porta 1234 con un nostro amico il cui IP è 123.123.123.125. In questa pagina basterà cliccare sul tasto "Nuovo protocollo", dargli un nome in "Nome" ed indicare il numero di porta 1234 sia iniziale che finale in "Ports".
Nella pagina "Zona" creerò una nuova area in "Zone di rete definite" ed assegnerò l'indirizzo 123.123.123.125 in "Nuovo indirizzo"; abilitando poi la connessione con "Locale" in "Connessione".
Infine attiverò il protocollo nella pagina "Protocollo" nella voce "Definito dall'utente" nella sezione "Proprietà Zona".
Vedi immagine 4
Vi chiederete perché vi ho spiegato questo: supponete che il vostro provider vi permetta di utilizzare un proxy server sulla porta 8080 per velocizzare la navigazione....
Abbiamo finito, ora basterà pigiare il tasto "Applica" ed apparirà una finestra che vi avviserà della creazione delle regole ed attivazione del firewall.
Se siete curiosi, provate a guardare (ma non toccare per ora) il file /etc/rc.firewall: vedrete le regole impostate.
PROBLEMI RISCONTRATI
E' possibile, dopo aver riavviato il computer, che non venga caricato il firewall impostato mediante guarddog: è facilmente verificabile mediante il comando iptables -L impartito da root in una console. Se appariranno poche righe (una decina circa), di cui alcune contenenti la dicitura ACCEPT, allora il firewall è disattivato: chiudere subito la connessione internet.
Si può ovviare al problema obbligando il sistema a caricare il firewall impostato da guarddog e salvato nel file /etc/rc.firewall. Aprire con un editor il file /etc/rc.local e senza modificare nulla, portarsi alla fine del file. Aggiungere una riga vuota ed inserire la seguente istruzione: /etc/rc.firewall. Salvare e riavviare il computer. Controllare se il firewall è in funzione con il comando sopra indicato e verificarne la bontà utilizzando i link sotto riportati.
CONCLUSIONE
Questa guida, rivolta all'uso del pacchetto guarddog, è stata redatta con l'intento di guidare il neofita all'installazione di un front-end in grado di creare una buona difesa alla propria workstation.
Se volete poi cimentarvi nella prova del vostro nuovo firewall, provate a connettervi ai siti
https://grc.com/x/ne.dll?bh0bkyd2
oppure
http://stealthtests.lockdowncorp.com/
vi daranno molte informazioni sulla vostra ''vulnerabilità'' vista dalla parte degli altri utenti internet.
Per concludere voglio ricordarvi che un firewall non è la soluzione ad ogni evento dannoso che internet (ma anche la vostra rete aziendale) può provocarvi: è necessaria una politica rivolta alla sicurezza che passa anche dalla semplice password che si digita per entrare nella nostra magnifica distribuzione Linux.
Guide correlate a "Firewall: configurazione del pacchetto Guarddog": |