|
||
| [IT] Firewall, come settarlo con ipchains | ||
|
Firewall, come settarlo con ipchains. Un firewall e' in pratica e' un meccanismo di controllo del traffico in ingresso ed in uscita da una rete. E' possibile
Il seguente e' un semplice schema di firewall:
rete interna -------- rete esterna
----------------| Filtro |---------------
--------
I dati in ingresso ed in uscita passano tutti attraverso il filtro. Il filtro, in questo caso, e' un
dispositivo in grado di controllare i dati di passaggio ed eventualmente bloccarli o reindirizzarli.Uno schema piu' avanzato, invece, puo' essere il seguente:
rete interna ---------- --------- ---------- rete esterna
----------------| Filtro A | gateway | Filtro B |----------------
---------- --------- ----------
Il flusso dei dati puo' essere sia verso l'esterno (es. internet) che verso l'interno (es.rete locale).Il traffico proveniente dall'esterno viene controllato dal filtro B. Quello verso l'esterno viene regolato dal filtro A. Una volta che il pacchetto (dati) esce da un filtro, entra nel gateway, ovvero un tratto di rete di percorrenza obbligata, lungo il quale possono essere effettuati ulteriori controlli (header, dimensione, contenuto, ecc.). Superato il gateway, finalmente il pacchetto, se ha superato tutti i controlli, puo' arrivare a destinazione (supponiamo che il filtro di ingresso non blocchi o controlli i dati in uscita e viceversa). Esistono comunque molte altre possibilita' e combinazioni. Un luogo comune e' che un firewall si possa configurare solo in reti aziendali. Un meccanismo simile, invece, puo' essere realizzato su reti di dimensioni qualsiasi, al limite anche per solo un computer. Esistono diversi modi di implementare un firewall, fra cui l'utilizzo di
Per configurare le regole si puo' utilizzare ipchains, un tool di amministrazione del firewall del kernel basato su IP. Un esempio di configurazione con ipchains e' il seguente: /sbin/ipchains -I input -s XXX.YYY.ZZZ.SSS -j DENY -lLa forma utilizzata e' ipchains <operazione> <catena> <sorgente_dei_dati> <cosa_fare> <attivazione_log>Le principali "operazioni" possibili sono:
Nell'esempio e' stata utilizzata "input", ovvero la catena relativa ai dati in ingresso. Fra le catene predefinite vi sono:
Per "cosa fare" si intende la politica da adottare quando gli indirizzi dei dati ricevuti/spediti soddisfano la regola. Fra i parametri che e' possibile passare all'opzione -j vi sono:
L'invocazione di ipchains dell'esempio iniziale, in pratica, blocca tutti i dati provenienti dall'indirizzo IP XXX.YYY.ZZZ.SSS, tenendo traccia (-l) del traffico ricevuto. Concludiamo vedendo come elencare le regole attive e come eliminarle. Per ottenere un elenco delle regole attivate, si sfrutta l'operazione -L. /sbin/ipchains -L [--line-numbers]Il parametro --line-numbers non e' obbligatorio. Per eliminare una regola, si puo' usare /sbin/ipchains -D <catena> <ordine_nella_catena>Il parametro "catena" assume il solito significato. Invece, il parametro "ordine" e' particolare. Si tratta del numero della posizione della regola all'interno della catena (partendo da 1). Per ottenere il numero, si puo' usare l'opzione --line-numbers nell'elencare le regole ed utilizzare il numero indicato. Non tutte le funzionalita' di ipchains sono state esposte, ma quanto detto consente di creare delle semplici regole adatte alla maggior parte dei casi. Per ulteriori informazioni, consultare il manuale linux ("man ipchains" e "man ipfw"). Due ultime considerazioni. Il tool ipchains, come tutti i firewall, non puo' proteggere da attacchi provenienti dall'interno della rete. Inoltre, cosi' come funziona, non consente la memorizzazione permanente delle regole, nel senso che ad ogni riavvio del sistema, le regole non saranno piu' attive (e' possibile configurarle attraverso uno script eseguito all'avvio). |
||
(c) 1999-2006
|