Sicurezza in Ubuntu con IPTABLES

La sicurezza è molto importante, ecco qui alcune semplici istruzioni per impostare gli ip e bloccare il traffico non desiderato con uno strumento potentissimo che si trova in linux, il comando iptables

Per impostare gli ip a delle schede di rete andiamo nel terminale e digitiamo

ifconfig eth0 172.16.7.103 netmask 255.255.255.0

route add default gw 172.16.7.1

Ovviamente dobbiamo diventare root digitiamo prima

sudo –s

e la nostra password di amministratore.

Ora dobbiamo permettere a certi utenti di navigare in internet, ad altri di navigare e usare alcuni servizi e ad altri dobbiamo negare tutte le operazioni. Cominciamo con ordine. Digitiamo nel terminale

sudo iptables –L

Per poter verificare le attuali condizioni, molto probabilmente saranno simili a queste

Dobbiamo inanzitutto diventare amministratore dell’host, diamo quindi

sudo –s

e digitiamo la password  di amministratore, ora lavoriamo come root e quindi possiamo dare i seguenti comandi.

Per prima cosa blocchiamo tutto il traffico che arriva:

iptables -P INPUT   DROP

Possiamo anche bloccare il traffico che passa dal server all’host e dall’host al server con i seguenti comandi

iptables -P FORWARD   DROP

iptables -P OUTPUT   DROP

Ora permettiamo che passi solo il traffico che ci richiediamo noi direttamente.

iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT -p tcp –dport 80 -j ACCEPT

Se vogliamo però consentire il traffico solo su alcune porte da noi scelte, come ad esempio solo sulla porta 80 dobbiamo ristabilire la situazione precedente e lasciare passare i dati solo attraverso le porte che ci interessano

Se invece di tutti gli host vogliamo permettere solo ad alcuni la connessione attraverso le porte dobbiamo specificare l’ip

iptables -A INPUT -s [indirizzo_ip] -p tcp –dport [porta] ACCEPT

Ecco ora un esempio pratico; dobbiamo permettere solo la navigazione in internet a tutti gli host, ma l’host 1 portà usufruire anche del servizio ftp, mentre l’host 25 e l’host 26 potranno anche scaricare e inviare posta. Diamo quindi in ordine

sudo iptables -P INPUT   DROP

Ora diamo

iptables -A INPUT -p tcp –dport 80 -j ACCEPT

Adesso tutti gli host potranno solo navigare in internet attraverso la porta 80. Dobbiamo quindi permettere all’host 1 di ip 172.16.1.100 di usufruire del protocollo ftp, apriamo quindi le porte 20 e 21

iptables -A INPUT –s 172.16.7.100 -p tcp –dport 20 –j ACCEPT

iptables -A INPUT –s 172.16.7.100 -p tcp –dport 21 –j ACCEPT

Ora dobbiamo aprire le porte per gli host 25 e 26 corrispondenti al servizio pop3 e smtp

iptables -A INPUT –s 172.16.7.125 -p tcp –dport 110 –j ACCEPT

iptables -A INPUT –s 172.16.7.125 -p tcp –dport 465 –j ACCEPT

iptables -A INPUT –s 172.16.7.126 -p tcp –dport 110 –j ACCEPT

iptables -A INPUT –s 172.16.7.126 -p tcp –dport 465 –j ACCEPT

Con queste opzioni tutti gli host portranno solamente navigare in internet, ma solo l’host 1 portà scaricare e solo l’host 25 e il 26 potranno accedere al servizio mail.

In questo esempio ho solamente bloccato il traffico in entrata. Se avessi voluto bloccare il traffico in uscita avrei dovuto sostituire al posto di ACCEPT OUTPUT, mentre se avessi voluto bloccare il traffico fra il server e i vari host avrei dovuto usare FORWARD. Ovviamente i comandi sono uguali.

Dando di nuovo iptables –L ci troveremo davanti a una schermata riassuntiva come questa, dove sono segnati tutti i permessi. Con policy DROP viene indicato che di default tutti gli host non accettano i pacchetti, sotto è specificata la lista di chi li accetta con relativo ip e protocollo. Mentre per FORWARD e OUTPUT tutti i pacchetti sono accettati come volevamo.

morocarlo

Sono uno studente di ingegneria informatica all'università di trieste. Sono appassionato di tecnologia, principalmente mi occupo/interesso di reti, hardware e software in generale. Programmo molto in Visual Basic .net (2008), ma conosco molto bene VB6. Ho le conoscenze basilari dei maggiori linguaggi di programmazione come php, asp, java, js, C#, Pascal e Assembly. SO: Windows 7, XP, Ubuntu, Mint, Netbook Remix

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *