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

Configurazione di NAT LOOPBACK

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



Registrato: 14/10/09 13:08
Messaggi: 90

MessaggioInviato: Mer Feb 25, 2015 5:33 pm    Oggetto: Configurazione di NAT LOOPBACK Rispondi citando

Salve a tutti,
ho la necessitą di aggiungere la funzione "NAT LOOPBACK" and un virtual server che ho creato, in modo che gli host all'interno della rete possano raggiungere questo servizio usando l'ip pubblico come target.

Ho trovato una spiegazione al seguente url:

http://wl500g.info/showthread.php?3166-Loopback-with-iptables-port-forward-and-access-from-LAN-side

Che, riassunto, si traduce in queste regole:

Codice:

wan_if=$(nvram get wan_ifname)
lan_if=$(nvram get lan_ifname)
wan_ip="83.89.24.37"
intranet="192.168.1.1/24"


# HTTP from Internet to Intranet host
iptables -A PREROUTING -t nat -p tcp -i $wan_if --dport 80 -j DNAT --to-destination 192.168.1.2:80
iptables -A FORWARD -p tcp -i $wan_if --sport 1024: -o $lan_if -d 192.168.1.2 --dport 80 -m state --state NEW -j ACCEPT


# HTTP from intranet to intranet host (using double NAT)
iptables -A PREROUTING -t nat -p tcp -i $lan_if -s $intranet -d $wan_ip --dport 80 -j DNAT --to-destination 192.168.1.2:80
iptables -A POSTROUTING -t nat -p tcp -s $intranet -o $lan_if -d 192.168.1.2 --dport 80 -j SNAT --to $wan_ip


la sezione "from Internet to Intranet host" č, sostanzialmente, il virtual server che ho gią fatto.
Il mio loopback č la sezione dopo.

Posso creare la regola di prerouting usando sempre la maschera del virtualserver, ma non ho trovato una maschera simile per le regole di postrouting.

Posso inserire a mano la regola nella sezione "Cron/Script" ma volevo capire se c'č un metodo anche attraverslo la UI.

Tralaltro vedo che nella configurazione attiva su ZS c'č gią una catena di postrouting chiamata SNATVS che potrebbe tornare utile per inserire queste regole.
Top
Profilo Invia messaggio privato
Paolo5C



Registrato: 15/05/15 11:08
Messaggi: 4

MessaggioInviato: Ven Mag 15, 2015 12:00 pm    Oggetto: Rispondi citando

Il post č del 25 febbraio e spero che tu abbia risolto, nel frattempo, ma ti rispondo nella speranza che la soluzione possa essere utile ad altri che hanno lo stesso dilemma.
Per creare una regola di NAT Loopback č sufficiente inserire negli Script di Avvio (Startup/Cron) nella sezione "NAT & Virtual Server" la seguente regola:
Codice:
iptables -t nat -A POSTROUTING -d <ip_locale_del_server> -s <LAN_ip> -p tcp --dport <porta_locale> -j SNAT --to <ip_pubblico>

Per <LAN_ip> si intende l'intera classe di IP (es: 192.168.0.0/24)
Top
Profilo Invia messaggio privato
ziotibia81



Registrato: 14/10/09 13:08
Messaggi: 90

MessaggioInviato: Ven Mag 15, 2015 1:01 pm    Oggetto: Rispondi citando

In realtą ho risolto in un altro modo:

siccome non mi fidavo molto di quel servizio esposto in internet ho messo il server in una DMZ con classe IP differente quindi poi funziona tutto anche senza il nat loopback.

Potrebbe comunque tornare utile ad altri.
Sarebbe carino se Fulvio inserisse nella maschera di creazione del virtual server un flag "Abilita nat loopback" che creasse in automatico la regola di POSTROUTING relativa.
Top
Profilo Invia messaggio privato
Paolo5C



Registrato: 15/05/15 11:08
Messaggi: 4

MessaggioInviato: Ven Mag 15, 2015 1:05 pm    Oggetto: Rispondi citando

Su molti firewall/router l'opzione č presente.
Su altri la regola di NAT Loopback viene creata di default se impostata globalmente l'opzione di crearla.
Mi trovo nella condizione di esporre un servizio pubblicamente, ma anche di renderlo raggiungibile dall'interno ma gli indirizzi locali non vorrei modificarli: come fare in questo caso per applicare la soluzione della DMZ?
Top
Profilo Invia messaggio privato
ziotibia81



Registrato: 14/10/09 13:08
Messaggi: 90

MessaggioInviato: Ven Mag 15, 2015 2:00 pm    Oggetto: Rispondi citando

Per creare una zona DMZ č opportuno che i server in DMZ abbiano una lasse IP differente (e anche un cablaggio ethernet isolato) altrimenti non ha molto senso.
Top
Profilo Invia messaggio privato
Paolo5C



Registrato: 15/05/15 11:08
Messaggi: 4

MessaggioInviato: Ven Mag 15, 2015 2:32 pm    Oggetto: Rispondi citando

ziotibia81 ha scritto:
Per creare una zona DMZ č opportuno che i server in DMZ abbiano una lasse IP differente (e anche un cablaggio ethernet isolato) altrimenti non ha molto senso.

Grazie. A questo punto la soluzione NAT loopback mi sembra la migliore.
Top
Profilo Invia messaggio privato
redfive



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

MessaggioInviato: Ven Mag 15, 2015 8:36 pm    Oggetto: Rispondi citando

Se proprio non č possibile avere i servizi raggiungibili dall'esterno su una DMZ, avendo una scheda di rete in piu', come 'last resort', č possibile creare un bridge, e inserire regole fw per controllare il forwarding tra un interfaccia e l'altra.....
ciao
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