In questa esercitazione si procede alla configurazione di iptables per proteggere il proprio sistema.
Operazioni da svolgere
1- Verificare se sono già attive sul proprio sistema delle regole di iptables
2- Ripulire e azzerare tutte le regole esistenti
3- Impostare come regole di default un DENY per i pacchetti in entrata e transito e un ALLOW per i pacchetti in uscita
4- Permettere l'accesso da tutti gli IP della rete locale in cui ci si trova alle porte telnet, ssh e web.
5- Permettere l'ingresso di tutti i pacchetti correlati a pacchetti usciti dall'host
6- Loggare tutti i pacchetti in ingresso che non sono permessi dalle regole precedenti
Comandi collaterali utili
whereis iptables
Mostra la posizione del comando iptables.
Comandi necessari
1- iptables -L -n -v
Visualizza in modo verboso e senza risolvere gli indirizzi IP l'elenco delle regole in uso
2- iptables -F
Ripulisce tutte le regole. iptables -Z
Azzera tutti i contatori.
3- iptables -P INPUT DROP
, iptables -F FORWARD DROP
Imposta come default il DENY sui pacchetti in entrata e in transito.
4- iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT
, iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 23 -j ACCEPT
, iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 80 -j ACCEPT
Accetta connessioni dalla rete locale (in questo caso 192.168.0.0/24) alle porte tcp 22 (ssh), 23 (telnet) e 80 (http)
5- iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Accetta tutti i pacchetti correlati a connessioni già stabilite e aperte da locale.
6- iptables -A INPUT -j LOG
Tutti i pacchetti che non vengono matchati dalle precedenti regole (ACCEPT su un DROP di default) vengono loggati.
Overview, gestione, utilizzo di iptables su Linux per packet filtering