Passa al contenuto principale

IP Tables

Il tipo IP Tables fornisce due feed (uno per IPv4 e uno per IPv6, se presente), compatibili con ipset. Questi feed contengono una serie di comandi che permettono di creare e aggiornare set di indirizzi IP (ipset), facilitando l'applicazione di regole iptables su interi gruppi di IP contemporaneamente. In questo modo, è possibile evitare di aggiungere una regola per ogni singolo indirizzo, migliorando efficienza e gestione.

Tipologia

Feed - Seer Box espone il feed via HTTP, non permette di controllare il target del firewall.

URL

http://$SEERBOX_IP:53380/feeds/ip_tables_$FIREWALL_NAME

Variabili da sostituire

  • $SEERBOX_IP : l'indirizzo IP di Seer Box
  • $FIREWALL_NAME : il nome configurato per lo specifico firewall

Configurazione lato Seer Box

Per impostare IP Tables come un tipo, seleziona semplicemente il valore IP Tables Feed nel campo Firewall type al terzo step di Aggiungi un firewall

Non sarà necessario nessun altro campo.

Configurazione lato firewall

All'URL specificato sopra, verrà esposto un file ZIP contenente dei feed diversi per indirizzi IPv4 e IPv6. Se fra i target delle regole dichiarate per il firewall non sono presenti indirizzi IPv6, lo ZIP conterrà solo il feed per gli indirizzi IPv4.

Nomi dei file

File ZIP

ip_tables_$FIREWALL_NAME
Variabili da sostituire
  • $FIREWALL_NAME : il nome configurato per lo specifico firewall

File feed

ip_tables_ipv4_$FIREWALL_NAME
ip_tables_ipv6_$FIREWALL_NAME
Variabili da sostituire
  • $FIREWALL_NAME : il nome configurato per lo specifico firewall

Applicazione delle regole al firewall

Una volta che i file sono stati estratti dallo ZIP, usali per creare o aggiornare i set di indirizzi IP nel seguente comando:

$ sudo ipset restore < ip_tables_ipv4_firewall_example
$ sudo ipset restore < ip_tables_ipv6_firewall_example

Ora che gli ipset sono stati creati, usa iptables per applicare loro delle regole. Per farlo, dovrai conoscere i nomi assegnati ai set. Puoi aprire i file e controllare la prima riga. Nell'esempio seguente, il nome dell' ipset è seerbox-example-ipv4:

create seerbox-example-ipv4 hash:ip family inet -!

In alternativa, puoi usare il seguente comando per visualizzare tutti gli ipset esistenti sulla macchina:

$ sudo ipset list

Ecco un esempio di come bloccare il traffico in arrivo da indirizzi IP contenuti nell'ipset seerbox-example-ipv4:

$ sudo iptables -A INPUT -m set --match-set seerbox-example-ipv4 src -j DROP

Una volta configurato il firewall e applicate le regole, è possibile aggionare gli ipset eseguendo nuovamente il comando ipset restore. In questo modo, iptables aggiornerà automaticamente il firewall e applicherà le regole anche ai nuovi indirizzi IP aggiunti ai set.

Per automatizzare questa operazione, è possibile utilizzare strumenti come inotifywait o simili per monitorare il file ZIP e ripetere il restore dopo ogni modifica.

Per maggiori informazioni, consulta la documentazione di iptables e di ipset.