Newsgroup: it.comp.os.linux.iniziare
Titolo: IPTables: come configurarlo correttamente

Come da oggetto, avrei bisogno di un aiutino per configurare IPTables. 
La mia configurazione era la seguente (copiata da Linux Magazie):
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  127.0.0.1            
0.0.0.0/0
DROP       tcp  --  
0.0.0.0/0
 
0.0.0.0/0
          tcp dpt:6000
DROP       tcp  --  
0.0.0.0/0
 
0.0.0.0/0
          tcp dpts:137:139
DROP       udp  --  
0.0.0.0/0
 
0.0.0.0/0
          udp dpts:137:139
DROP       icmp --  
0.0.0.0/0
 
0.0.0.0/0
          icmp type 8
DROP       icmp --  
0.0.0.0/0
 
0.0.0.0/0
          icmp !type 0
DROP       udp  --  
0.0.0.0/0
 
0.0.0.0/0
          udp 
dpts:33435:33525
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  
0.0.0.0/0
 
0.0.0.0/0
          tcp 
flags:0x16/0x02 limit: avg 3/sec burst 5
ACCEPT     tcp  --  
0.0.0.0/0
 
0.0.0.0/0
          tcp 
flags:0x17/0x04 limit: avg 1/sec burst 5
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Ma, putroppo, appena ho provato a connettermi ad internet non funzionava 
niente. L'unico modo che ho trovato di farlo andare e stato cambiare la 
policy della catena INPUT in ACCEPT anziche DROP. Come cavolo posso fare 
a proteggermi (almeno un po) e ad andare in internet contemporaneamente?
PS: Scusate il cross post

 ACCEPT     all  --  127.0.0.1            
0.0.0.0/0
[snip]
qua il problema e' che accetti tutto il traffico proveniente da localhost ma
no quello esterno...quindi per esempio se ti connetti ad un sito web...e
quindi avrai pacchetti che vanno dal server web:80 a
te:porta_effimera..questi verranno droppati..!
La prassi sarebbe la seguente, ricordati:
1) Droppi tutto - Accetti solo cio' che ti serve
oppure
2) Accetti tutto - Droppi cio' che non ti serve
La 1 e' la migliore e la più usata. Quindi per esempio:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A OUTPUT -i ppp0 -p tcp -d 
0.0.0.0/0
 --dport 80 --state
new,estabilished -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -s 
0.0.0.0/0
 --sport 80 --state
estabilished,related -j ACCEPT
iptables -A FORWARD -i ppp0 -p tcp -s 
0.0.0.0/0
 --sport 80 --state
estabilished,related -j ACCEPT
Questa inizio di configurazione ti permette praticamente solo la navigazione
web... per il resto leggiti i doc presenti in rete..
Regards,
--
         ..::SNHYPER::..
      "Security developer"
Linux registered user  #249109 | machine #133922
site=> 
http://snhyper.owns.it

 te:porta_effimera..questi verranno droppati..!
[snip]
Grazie delle informazioni. Col tuo aiuto, e quello di un documento che 
ho trovato, sono finalmente riuscito a configurare tutto.


Ciao, mi aggancio a quello che hai scritto per chiederti un
chiarimento, perché ti limiti a indicare il protocollo tcp? Sono
veramente un neofita e tra la varia documentazione ho scaricato anche
l'elenco iana delle porte e ho visto che su tutte e' presente anche
l'udp, come mai non serve per iptables? Vorrei "fondere" il tuo script
"minimale" con le istruzioni del "masquerade howto" e poi abilitarmi
tutti i servizi che mi servono (ftp, smtp, pop3 e cosi' via), anche in
questi casi posso semplicemente usare -p tcp? 
Grazie per l'aiuto.
Riccardo