Cos’è Iptables?

Iptables è un software firewall utilizzato nelle distribuzioni software Linux che funziona filtrando i pacchetti attraverso un sistema di tabelle contenenti una catena di regole per il filtraggio dei pacchetti. Le catene e gli insiemi di regole contenuti nel firewall determinano se un pacchetto è consentito e, in tal caso, come viene gestito. Le tabelle stesse sono mantenute in memoria e il software iptables fornisce la configurazione delle catene all’interno delle tabelle.

Ogni pacchetto di dati inviato su una rete ha informazioni identificative che vengono lette dal sistema ricevente. Il software Iptables prende queste informazioni e determina cosa farne spostandole attraverso una serie di regole concatenate. Le regole funzionano per classificare il pacchetto in base alle sue informazioni identificative, come un indirizzo IP (protocollo Internet). Dopo essere stato identificato, il pacchetto si sposta da una catena all’altra, a seconda del set di regole configurato. Le catene determinano come il sistema distribuisce il pacchetto.

Le regole sono criteri per il modo in cui un pacchetto si muove all’interno delle catene decisionali di iptables. Il pacchetto si sposterà da una regola all’altra, purché soddisfi i requisiti per ciascuna catena. Ogni pacchetto sarà accettato, inoltrato, scartato, messo in coda, resettato o restituito.

L’accettazione sposta il pacchetto alla catena successiva e l’eliminazione rimuove completamente il pacchetto. Se il pacchetto è in coda, viene spostato e indirizzato in un gestore di coda separato all’interno dello spazio utente. Quando un pacchetto viene restituito, torna all’ultima catena accettata.

Iptables è un’applicazione in spazio utente, il che significa che opera all’interno di uno spazio segregato all’interno delle funzionalità del kernel Linux. I criteri utilizzati per identificare e distribuire i pacchetti dal firewall sono completamente configurabili e personalizzabili utilizzando una serie di opzioni di comando. Ciò include l’impostazione dell’indennità per le sessioni stabilite, il blocco di tipi di traffico e accesso e l’autorizzazione solo di traffico specifico su determinate porte. Il software può anche essere configurato per registrare tutto il traffico in entrata o per registrare solo tipi specifici di traffico.

Il software Iptables è gestito dal progetto Nefilter e ha avuto inizio nel 1998. Oltre ad essere utilizzato come firewall e software di manipolazione dei pacchetti, Iptables può essere utilizzato anche per il masquerading IP, l’implementazione di proxy trasparenti e l’analisi dei log. Ciò consente al firewall di rilevare e prevenire attività potenzialmente dannose, proteggendo ulteriormente il sistema. Il software è inoltre predisposto per la configurazione con estensioni di terze parti, poiché contiene diversi livelli di interfacce di programmazione delle applicazioni. Iptables è in genere installato per impostazione predefinita sulla maggior parte delle distribuzioni dei sistemi operativi Linux.