Newsgroup: it.comp.os.linux.iniziare
Titolo: iptable

Mi sembra di impazzire, tutte queste regole .
per questi dannati pacchetti, scherzo!!!
Ciao a tutti come avrete letto sono alle prese
con iptable , devo ammettere che sono ignorante
in materia di linux ma ci stò provando.
Arrivo alla domanda:
Ma se volessi chiudere solamente determinate
porte e non filtrare i pacchetti ,
perchè ciò comporterebbe
la scrittura di molte regole che non conosco,
pensate che sia impossibile?
oppure è troppo semplicistico per un firewall 
che si rispetti.
Nel caso che esiste la possibilità 
di chiudere le porte mi riportate un esempio.
Vi ringrazo
      Saluti
PS.Non scriveteni in posta ho cambiato indirizzo.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 porte e non filtrare i pacchetti ,
iptables -t filter -A INPUT -p udp --dport 0:1023 -i ppp0 -j DROP
iptables -t filter -A INPUT -p tcp --syn --dport 0:1023 -i ppp0 -j DROP
iptables -t filter -A INPUT -p tcp --syn --dport x11 -i ppp0 -j DROP
Io uso queste tre regole per chiudere le porte privilegiate e gia che ci 
sono anche la porta di x11 che dovrebbe essere la 6000.
Non so se basta per andare sicuri pero', sono niubbo anch'io!
man iptables e' ricco di spiegazioni e di esempi e se cerchi iptables con 
google trovi una valanga di informazioni.
ciao.
--
Mr. Rail
dann...@yahoo.it
Inviato da 
www.mynewsgate.net

 per questi dannati pacchetti, scherzo!!!
se non hai nulla contro i tool grafici scarica Guarddog, č un front-end 
per iptables in italiano e molto intuitivo;
r
-- 
That is not it at all,
That is not what I meant, at all.
[The Love Song of J. Alfred Prufrock]
tutto sui Pentangle: 
http://umpf.net/

 
ciao a tutti
in queto modo la egola viene accodaa alle altre. quindi se su una porta ho 
il ACCEPT prima di queste regole, allora non servono.
per aggiungere una regola in testa occorre invece mettere -I (e non -A)
-t filter puo' anche non essere specificato
iptables -I INPUT -p tcp --dport 25 -j DROP
mi chiude la porta 25
perche' invece non chiudere tutto e specificare cosa si vuole aprire? 
in questo caso si imposta una politica di tipo drop su INPUT e poi si fa 
accept sulle porte che si vuole aprire
ad es:
iptables -P INPUT DROP
iptables -A INPUT -s 
172.16.8.0/24
 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state related,established -j ACCEPT
cea una politica DROP, ma accetta su tutte le porte se la richiesta e' 
proveniente dalla rete 172.16.8.0 e accetta sulla porta 80 da ovunque.
se si interessati, sul nostro sito alla pagina
http://www.retelinux.it/rete/rl_firewall_1.html
c'e' ulteriore documentazione e si puo scaricare il nostro firewall 
(licenza GNU) per impostare velocemente le regole con interfaccia grafica.
saluti
gualty
-- 
www.retelinux.it
www.imodeweb.com


Se definisco la politica di INPUT
iptables -P INPUT DROP
e a seguire
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
a me non funziona più nulla e mi chiudo la porta in faccia.
Ma forse mi manca di Appendere
iptables -A INPUT -s 
192.168.0.0/24
 -j ACCEPT
sopra???
--
LukeNukem

 LukeNukem
be' .... era un esempio.
bisogna vedere la tua sit particolare
ad es... per accedere dallo stesso pc ai servizi dovresti fare almeno
iptables -i 127.0.0.1 -j accept
spiegaci la situazione e ti aiutiamo nel tuo caso particolare
-- 
www.retelinux.it
www.imodeweb.com

 spiegaci la situazione e ti aiutiamo nel tuo caso particolare
Io ho creato un file rc.firewall che, a primo impatto funziona...dopo varie
peripezie e consigli.
Il file č cosě strutturato (ma non metto in dubbio che vi siano errori anche
gravi e che sia da "sistemare")
#!/bin/bash
#
#Regole per rc.firewall attivate da IPTABLES
#
#
iptables -F
iptables -t nat -F
iptables -X
iptables -Z
#sperimentale ma funziona msn messenger e winmx
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 5190 -j DNAT --to-d
192.168.0.3:5190
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 1863 -j DNAT --to-d
192.168.0.3:1863
iptables -t nat -A PREROUTING -i eth1 -p udp --dport 5190 -j DNAT --to-d
192.168.0.3:5190
iptables -t nat -A PREROUTING -i eth1 -p udp --dport 1863 -j DNAT --to-d
192.168.0.3:1863
iptables -t nat -A PREROUTING -i eth1 -p tcp -m multiport --dport
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p tcp -m multiport --sport
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p udp -m multiport --dport
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p udp -m multiport --sport
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
#
#definisco una politica di ACCEPT per FORWARD e OUTPUT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#
#probabilmente da invertire nell'ordine
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
iptables -A INPUT -p ICMP -s ! 
192.168.0.0/24
 -j DROP
#
#disabilito i pacchetti indirizzati alla sorgente e i pacchetti ICMP
rediretti
echo "0" > /proc/sys/net/ipv4/conf/eth1/accept_source_route
echo "0" > /proc/sys/net/ipv4/conf/eth1/accept_redirects
#
#abilito l'ignore sui pacchetti ICMP d'errore malformati
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo "1" > /proc/sys/net/ipv4/conf/eth1/log_martians
echo "1" > /proc/sys/net/ipv4/conf/eth1/rp_filter
#
#abilito la protezione dal Syn-flood
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
#
#abilito l'IP forwarding
echo "1" > /proc/sys/net/ipv4/ip_forward
#
#tutta la rete intranet puň accedere
iptables -A INPUT -i eth0 -j ACCEPT
#
#accetta tutte le connessioni correlate a quella da me iniziata
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
#
#creo una catena di protezione dal Syn-flood
iptables -N syn-flood
iptables -A INPUT -i eth1 -p tcp --syn -j syn-flood
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
iptables -A syn-flood -j DROP
#
#scarto i pacchetti che cercano di stabilire una nuova connessione ma che
#non sono SYN TCP/IP corretti, nonchč i pacchetti frammentati
iptables -A INPUT -i eth1 -p tcp --syn -j DROP
iptables -A INPUT -i eth1 -m state --state NEW -j DROP
iptables -A INPUT -i eth1 -f -j DROP
#
#porte x file sharing
iptables -A FORWARD -i eth1 -o eth0 -p tcp -m multiport --dport
6697,6698,6699,6346,4661,4662,16699,16257 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -p tcp -m multiport --sport
6697,6698,6699,6346,4661,4662,16699,16257 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -p udp -m multiport --dport
6697,6698,6699,6346,4661,4662,16699,16257 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -p udp -m multiport --sport
6697,6698,6699,6346,4661,4662,16699,16257 -j ACCEPT
#
#spedisco pacchetti sulla loopback
iptables -A INPUT -i lo -j ACCEPT
#
#DNS
iptables -A INPUT -p udp --sport 53 -j ACCEPT
#
#Portscanner sospetti
iptables -A FORWARD -i eth1 -p tcp --tcp-flags SYN,ACK,FIN,RST RST -j DROP
#
#Ping della morte (Ping of death):
iptables -A FORWARD -p icmp --icmp-type echo-request -j DROP
#
#effettuo il mascheramento
iptables -t nat -A POSTROUTING -s 
192.168.0.0/24
 -j MASQUERADE
#
#tutto l'input esterno che non soddisfa le regole sopra č DROPPATO
iptables -A INPUT -i eth1 -j DROP
#
#FINE DEL FIREWALL

Prova guarddog. Ti permette di selezionare le porte che vuoi aprire o
chiudere in base all'applicazione e ti configura automaticamente iptables
-- 
Pietro	- 
http://www.pietroweb.tk
Linux Registered User #304991
Powered by *Mandrake GNU/Linux 9.1*

Vi ringrazio calorosamente per i consigli molto utili 
saluti 
         anna 
Mr. Rail
gualty
LukeNukem
rama
smack

 iptables -A FORWARD -p icmp --icmp-type echo-request -j DROP
Cosi' non  puoi piu' pingare dall'interno.  E  dall'esterno non cambia
nulla perche' i ping finiscono in INPUT, non in FORWARD.
Ciao
-- 
Sono un servitore del Fuoco Segreto, e reggo la fiamma di Anor.
A nulla ti servira' il fuoco oscuro, fiamma di Udun.
Torna nell'Ombra! Non puoi passare.

 Ciao
Grazie Ouz
P.S: un problema irrisolvibile data la struttura della mia LAN (e relativa
condivisione della connessione) č quello di poter accedere alla rete winmx
in primaria per poter creare canali di chat.
ROUTER <--> ETH1 [MDK9.1] ETH0 <--> CLIENTS
Credo sia impossibile.
--
LukeNukem

 per questi dannati pacchetti, scherzo!!!
Non se si trova ancora in edicola, ma nel numero 5 di Linux&C. c'era un 
inserto di circa 60 pagine sul funzionamento di iptables, a mio modo di 
vedere molto utile per chi come me non è molto esperto di firewall.
Ci sono anche dei buoni how-to nel sito 
http://www.netfilter.org/documentation/index.html#HOWTO
 (in italiano!!!).
Ciao, Paolo

 in primaria per poter creare canali di chat.
Eh?!?  Non ho  capito nemmeno quello che hai detto  ;-) Comunque se mi
dice  a livello  rete  che casa  hai  bisogno di  fare  ci sono  buone
possibilita' che si possa fare.


 possibilita' che si possa fare.
Riprendo la descrizione di come è strutturata la rete
Esterno [Router HDSL] <--> [ETH1] (LINUX BOX) [ETH0]
                                                        |
                                            Switch Ethernet
                                                        |
                                        CLIENT (192.168.x.x)
192.168.0.3 (Client) utilizza, con la configurazione IPTABLES sopra
descritta, tranquillamente WINMX sia in UPLOAD sia in DOWNLOAD, sfruttando
la connessione secondaria (consigliata per connessioni LAN dietro firewall
con alcune porte chiuse). In questo modo, molte opzioni di WINMX vengono
disabilitate perchè ottenibili solo in caso di connessione primaria (come
l'apertura di canali chat)
Io ho provato qualche volta a sistemare con regole di NAT, ma nulla da fare,
qualcuno dice che è necessaria la modifica sul router delle porte TCP UDP
destinate a quel programma.
Vorrei tanto riuscirci, ma anche cercando con Google non ho trovato
documentazione.
Grazie 1000
--
LukeNukem

 Io ho provato qualche volta a sistemare con regole di NAT, 
Almeno  dovresti sapere  le porte  che  sono coinvolte,  mica si  puo'
tirare a caso, eh.
Ciao


 Ciao
Grazie ancora Ouz
--
LukeNukem

 molti ora usano la 16699 TCP e 16257 UDP e 26699 TCP e 26257 UDP
Ok, ora  le ho  viste; quelle  dello script che  hai postato  la prima
volta, quello che aveva problemi di port"s".  
Allora si dovrebbe poter fare.
:-)


 :-)
iptables -t nat -A PREROUTING -i eth1 -p tcp -m multiport --dports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p tcp -m multiport --sports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p udp -m multiport --dports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -i eth1 -p udp -m multiport --sports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
Queste sono le righe modificate, se tolgo -i eth1
iptables -t nat -A PREROUTING -p tcp -m multiport --dports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -p tcp -m multiport --sports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -p udp -m multiport --dports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
iptables -t nat -A PREROUTING -p udp -m multiport --sports
6697,6698,6699,6346,4661,4662,16699,16257 -j DNAT --to-d 192.168.0.3
come hai scritto nel tuo post nn funziona più nulla.
iptables -t nat -A PREROUTING -p tcp --dport 6699 -j DNAT --to-destination
192.168.0.3:6699
Ora mi converrà scrivere una regola per ogni porta??
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 6699 -j
DNAT --to-destination 
192.168.0.3:6699
    \\ destinazione
iptables -t nat -A PREROUTING -i eth1 -p tcp --sport 6699 -j
DNAT --to-destination 
192.168.0.3:6699
    \\ sorgente
iptables -t nat -A PREROUTING -i eth1 -p udp --dport 6257 -j
DNAT --to-destination 
192.168.0.3:6257
    \\ destinazione
iptables -t nat -A PREROUTING -i eth1 -p udp --sport 6257 -j
DNAT --to-destination 
192.168.0.3:6257
    \\ sorgente


 DNAT --to-destination 
192.168.0.3:6699
    \\ destinazione
Se non da' errore la prima regola di questo post [1] non c'e' problema
e puoi usare le regole col multiport tranquillamente.
Ciao


 Ciao


 Grazie ancora Ouz
Ma figurati :)


 Ma figurati :)
Perfetto, perfetto....mi stai aiutando parecchio a sistemare questo
script....
Grazie Ouz (hai una birra pagata!)
--
LukENukem

Anch'io ho impostato un firewall 'grezzo', per gli usi domestici quindi
ho tralasciato il filtraggio selettivo dei pacchetti:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -A INPUT -s 
127.0.0.1/32
 -d 
127.0.0.1/32
 -j ACCEPT
iptables -A INPUT -s 
192.10.1.0/24
 -d 
192.10.1.0/24
 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -d 
127.0.0.1/32
 -s 
127.0.0.1/32
 -j ACCEPT
iptables -A OUTPUT -d 
192.10.1.0/24
 -s 
192.10.1.0/24
 -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
E' senza pretese, naturalmente.Ciauz
