Indice del forum www.zeroshell.net
Distribuzione Linux ZeroShell
 
 FAQFAQ   CercaCerca  GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo  Log inLog in   Messaggi privatiMessaggi privati 

Regole iptables captive portal

 
Nuovo argomento   Rispondi    Indice del forum -> ZeroShell
Precedente :: Successivo  
Autore Messaggio
disgui1974



Registrato: 03/05/10 10:25
Messaggi: 65

MessaggioInviato: Gio Set 22, 2011 2:12 pm    Oggetto: Regole iptables captive portal Rispondi citando

Ciao ragazzi, ho un problemone....

Ho notato che giustamente autenticandosi tramite il CP tutte le porte vengono aperte e il client lato CP può comunicare con la lan.

E' possibile specificare solo le porte da aprire dopo l'autenticazione??
Io vorrei far passare il traffico solo su queste porte :

TCP/25
TCP/80
TCP/81
TCP/110
TCP/143
TCP/443

e tutto il resto chiuso, inoltre ho notato che mettendo nella chain FORWARD una regola in DROP che impedisce l'accesso alla lan mi chiude tutto tranne che la porta 80!

E' possibile scrivere le regole iptables che facciano al caso mio???

In poche parole:

autenticazione CP -> traffico nelle porte prestabilite -> separazione totale dalle altre reti....

Ciao e grazie
Top
Profilo Invia messaggio privato
zerolinux



Registrato: 15/05/11 18:00
Messaggi: 38

MessaggioInviato: Mar Set 27, 2011 8:36 am    Oggetto: Re: Regole iptables captive portal Rispondi citando

disgui1974 ha scritto:
Ciao ragazzi, ho un problemone....

Ho notato che giustamente autenticandosi tramite il CP tutte le porte vengono aperte e il client lato CP può comunicare con la lan.

E' possibile specificare solo le porte da aprire dopo l'autenticazione??
Io vorrei far passare il traffico solo su queste porte :

TCP/25
TCP/80
TCP/81
TCP/110
TCP/143
TCP/443

e tutto il resto chiuso, inoltre ho notato che mettendo nella chain FORWARD una regola in DROP che impedisce l'accesso alla lan mi chiude tutto tranne che la porta 80!

E' possibile scrivere le regole iptables che facciano al caso mio???

In poche parole:

autenticazione CP -> traffico nelle porte prestabilite -> separazione totale dalle altre reti....

Ciao e grazie


tu puoi programmare il firewall come vuoi direttamente dall'interfaccia, basta un minimo di conoscenza di iptables.....puoi creare le regole che preferisci, io in genere abilito le porte desiderate e per ultimo droppo il resto....attenzione quindi alla sequenza.

Saluti

Paolo
Top
Profilo Invia messaggio privato
disgui1974



Registrato: 03/05/10 10:25
Messaggi: 65

MessaggioInviato: Mar Set 27, 2011 8:43 am    Oggetto: Rispondi citando

Si, lo so, ma le ho provate tutte, se io ad esempio abilito la porta 443 nell'interfaccia dove risiede il CP questa rimane aperta anche se non c'è autenticazione....

Sembra che le regole del firewall abbiano la precedenza (com'è gisto del resto) sul CP... Io vorrei configurare direttamente il CP....
Top
Profilo Invia messaggio privato
redfive



Registrato: 26/06/09 22:21
Messaggi: 774

MessaggioInviato: Mar Set 27, 2011 12:12 pm    Oggetto: Rispondi citando

Ciao , configurare direttamente iptables sul CP non è semplicissimo , credo che alle regole statiche , vengano di volta in volta aggiunte regole dinamiche , comunque , ipotizzando una topologia tipo:
ETH00 192.168.10.0/24 tua lan privata/management
ETH01 192.168.11.0/24 interfaccia con CP attivo
ETH01 192.168.12.0/24 interfacvcia wan
potresti creare una nuova chain , es: check_port con regole tipo
Codice:

protocol tcp dest port 25   action RETURN  (log)
protocol tcp dest port 80   action RETURN  (log)
protocol tcp dest port 81   action RETURN  (log)
protocol tcp dest port 143  action RETURN  (log)
protocol tcp dest port 80   action RETURN  (log)
protoco all                       action DROP      (log)

quando viene chiamata la chain check_port , se sono richiesti servizi diversi da quelli dichiarati , il pacchetto verrà droppato .
nella chain di forward , come prima regola permetti il traffico di "ritorno"(related , established )dalla dalla ETH01 alla ETH00 ( dalla tua lan potresti gestire eventuali switch o ap sulla rete del CP )
seconda regola , input ETH01 output ETH00 action DROP
come terza regola regola , input ETH01 action chain , jump to check_port
tutto ciò che entra dalla ETH01 e che non soddisfa la regola precedente , verrà processato dalla chain check_port , se non viene droppato da questa ritorna e prosegue il check delle rules fino ad arrivare a quelle del CP ( che non vedi da gui , o entri in ssh e dai un iptables -L , oppure crei una cron-job , es show_fw e come comando sempre iptables -L (-v) , salvi la cron , non la abiliti , test e vedi le reali rules ).
Una volta che il pacchetto sarà arrivato alle regole del CP , sarà processato da queste .
Potresti perdere i free services del CP , ma se come dhcp e dns usi ZS non dovresti avere problemi . Per i free clients , noto il mac-address , potresti creare nel dhcp attivo sulla ETH01 delle static-entries , e far partire il pool da un indirizzo successivo ( es static da 2 a 31 , pool da 32 a 254 ) , in questo caso , nella terza regola della chain di forward ( input ETH01 action chain , jump to check_port ) specifichi come source address
Codice:

! 192.168.11.0 255.255.255.224

tutti gli indirizzi del pool passeranno dalla chain check_port , i primi 31 no .
oppure puoi specificare singolarmente ciò che vuoi. E' fatto un pò alla " carlona" , ipotizzando che la tua policy di default della chain di forward sia ad ACCEPT ( anche se spero non sia cosi !! )
In teoria .....dovrebbe funzionare .
ciao jonatha
Top
Profilo Invia messaggio privato
disgui1974



Registrato: 03/05/10 10:25
Messaggi: 65

MessaggioInviato: Mar Set 27, 2011 12:28 pm    Oggetto: Rispondi citando

Ciao redfive e grazie della risposta, sinceramente non capisco molto di iptables e per questo toglimi una curiosità, che differenza passa gestire il traffico direttamente dalla GUI principale e fare come dici tu tramite una nuova chain?

Ma alla fine non è la stessa cosa??? Scusa la mia perplessità ma come ti ho detto prima sono abbastanza profano di iptables.... Embarassed

Comunque sarebbe interessante anche a scopo comunitario capire quale script del captive portal viene eseguito dopo l'autenticazione e cosa fa...

Intanto grazie ancora
Top
Profilo Invia messaggio privato
redfive



Registrato: 26/06/09 22:21
Messaggi: 774

MessaggioInviato: Mar Set 27, 2011 1:11 pm    Oggetto: Rispondi citando

la nuova chain la puoi creare da gui
Top
Profilo Invia messaggio privato
disgui1974



Registrato: 03/05/10 10:25
Messaggi: 65

MessaggioInviato: Mar Set 27, 2011 1:14 pm    Oggetto: Rispondi citando

si si, questo l'ho capito, quello che non capisco è la differenza tra intervenire nella chain FORWARD e quella personalizzata e come questa possa influire nel CP (vedi il tuo primo post).

Porta pazienza....... Wink

TANK'S!!!
Top
Profilo Invia messaggio privato
disgui1974



Registrato: 03/05/10 10:25
Messaggi: 65

MessaggioInviato: Ven Set 30, 2011 11:23 am    Oggetto: Rispondi citando

Redfive... Non ho capito bene la logica ma come mi hai indicato tu funziona!!! Grazie
Top
Profilo Invia messaggio privato
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> ZeroShell Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi


Powered by phpBB © 2001, 2005 phpBB Group
phpbb.it