Newsgroup: it.comp.os.linux.sys
Titolo: Nat

Salve ragazzi,
vorrei nattare il mio web server che all'interno della mia rete in modo che
sia visibile da Internet.
ho provato a fare il nat in questo modo
iptables -t nat -A PREROUTING -d 194.185.53.52 -p tcp --dport 85 -j
DNAT --to-destination 
192.168.0.101:85
ma non funziona
http://194.185.53.52
funziona invece
http://192.168.0.101
ifconfig della mia red hat 7.3 č:
eth0      Link encap:Ethernet  HWaddr 00:40:F4:B1:37:6D
          inet addr:192.168.10.2  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:14445402 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15577001 errors:0 dropped:0 overruns:1 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:
3252586852
 (3101.9 Mb)  TX bytes:1789650943 (1706.7 Mb)
          Interrupt:11 Base address:0x7000
eth1      Link encap:Ethernet  HWaddr 00:02:B3:2E:6B:61
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9195375 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5463427 errors:0 dropped:0 overruns:23 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:
3644100441
 (3475.2 Mb)  TX bytes:
4127104108
 (3935.9 Mb)
          Interrupt:11 Base address:0xf000
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1137 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1137 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:89469 (87.3 Kb)  TX bytes:89469 (87.3 Kb)
ppp0      Link encap:Point-to-Point Protocol
          inet addr:194.185.53.52  P-t-P:81.174.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:2602494 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2805056 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:939267974 (895.7 Mb)  TX bytes:2130321650 (2031.6 Mb)
iptables č:
[root@localhost user01]# /etc/init.d/iptables status
Table: mangle
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
Table: filter
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Table: nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  anywhere             194-185-53-52.f5.ngi.ittcp dpt:85
to:192.168.1.10
1:85
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  all  --  anywhere             anywhere
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Ciao
Mario

Grazie mille,
ho fatto SNAT edesso adesso funziona!!!!

Grazie mille,
ho fatto SNAT ede adesso funziona!!!!

Grazie milla ho fatto SNAT ed adesso funziona.
Mario



 Mario
cià
D!

 ho fatto SNAT edesso adesso funziona!!!!
potresti postare la soluzione del problema?



Lo ha scritto: ha fatto SNAT.

whiplash ha scritto:

descrivi come si a fare SNAT, per favore. Si urla fuori dal balcone "SNAT" o e' una cosa tipo "nano nano" ?
scherzi a parte, mi interessava vedere il comando <giusto> di iptables per esteso.
Ho compreso poco della domanda, ma vedere il comando sbagliato e quello giusto mi avrebbe fatto capire di piu', magari mi avrebbe illuminato per un problema che mi fu posto circa un mese fa.

 un problema che mi fu posto circa un mese fa.
Scusa e speri di capirci qualcosa facendo "reverse engineering" dei
comandi? Non sai neanche cosa e` un DNAT e uno SNAT.
http://iptables-tutorial.frozentux.net/iptables-tutorial.html

Braindead ha scritto:

ma questo ng si chiama per caso PARACULI.LINUX  ? Ma datti una calmatina, ragazzo.
Ognuno impara a modo suo. Domandare e' lecito, rispondere e' cortesia. Chi non vuole rispondere, pero', TACE.

 
Se permetti la pubblicità, prova a dare una occhiata al tutorial su 
http://www.skullkrusher.net/linux/iptables.html
Mandi...
-- 
Здрасти!
cat: .signature: No such file or directory

Vediamo quindi le nostre prime regole di NAT:
77: iptables -t nat -A PREROUTING -p tcp -i eth0 --dport www -j DNAT --to
nostro.proxy.server:
78: iptables -t nat -A POSTROUTING -o eth2 -s 
192.168.200.0/24
 -j SNAT --to
123.45.68.1
Ok, la prima regola dice, a parole, di inserire una regola nella tabella di
nat per intercettare tutti i pacchetti provenienti
da eth0 e destinati ad un server www (porta 80 . prima che venga deciso da
che interfaccia farli uscire) e di deviarli
sul nostro.proxy.server porta 8080.
Attenzione però che proxy server come squid devono essere congurati per
poter accettare connessioni deviate in
questo modo, in quanto non seguono perfettamente lo standard utilizzato dai
proxy (leggete la documentazione di
squid!).
Tornando a parlare delle regole, la seconda dice di modicare il mittente
(l'indirizzo ip sorgente) dei pacchetti uscenti
da eth2 e provenienti dalla nostra LAN (
192.168.200.0/24
) con l'indirizzo ip
esterno del nostro rewall.

 DNAT --to-destination 
192.168.0.101:85
cioe', in sintesi, tutto cio' che leggevi da 
194.185.53.52:85
, lo ritargavi come destinato a 
192.168.0.101:85
Poi, dalla tua rete interna, non riuscivi a vedere le risposte di 
192.168.0.101:85
, giusto?
E, sempre se ho capito, stamattina, dovresti aver risolto con questo comando:
iptables -t nat -A POSTROUTING -o eth1 -s 
192.168.0.0/24
 -j SNAT --to 194.185.53.52
che dovrebbe ritargare tutto cio' che esce dalla tua eth1 e dal net 192.168.0.0 come proveniente da 194.185.53.52.
Oppure non ho capito niente e devo studiare ancora. Te lo chiedo sempre se vuoi dirlo.... e sempre se non urto la suscettibilita' di nessuno mostrando la mia ignoranza nello specifico argomento... 
Nel frattempo ti ringrazio.
Scusate tutti dell'intemperanza precedente: di help sull'argomento ne ho letti tanti, ma quasi sempre un esempio vale piu' di mille parole. Non credo si possa ridurre un ng ad un continuo rimando a tutorial e help.

 iptables -t nat -A POSTROUTING -o eth1 -s 
192.168.0.0/24
 -j SNAT --to 194.185.53.52
ahem, manca qualcosa. Forse dovrebbe essere:
iptables -t nat -A POSTROUTING -p tcp --dport 85 -o eth1 -s 
192.168.0.0/24
 -j SNAT --to-source 194.185.53.52

 Chi non vuole rispondere, pero', TACE.
Ti ho risposto,non ti ho mandato a cagare,non mi sono inalberato,non ti ho
detto che sei un idiota.
Ti ho dato un link ad un tutorial completo,chiaro,suddiviso in capitoli e
con anche uno schema grafico dell'attraversamento dei pacchetti dentro
netfilter.

 Si urla fuori dal balcone "SNAT" o e' una cosa tipo "nano nano" ?
Perdonami, ma questo è it.comp.os.linux.sys, per cui sono portato a
pensare che ci scrivano coloro i quali, più o meno, hanno a che fare
con quel .sys.

 iptables -t nat -A POSTROUTING -p tcp --dport 85 -o eth1 -s 
192.168.0.0/24
 -j SNAT --to-source 194.185.53.52
No, --sport 85
Per favore, imposta il tuo newsreader affinchè le righe non superino
i 72 caratteri, altrimenti i tuoi post risultano difficilmente leggibili.

 No, --sport 85
giusto.
dammi conferma.
Cosi' gli diciamo: cambia l'indirizzo source (mettendo 194.185.53.52) di
tutti i pacchetti provenienti dalla porta tcp 85, dal network
192.168.0.0/24
, attraverso l'interfaccia eth1.

 netfilter.
e io ti ringrazio, anche se faceva gia' parte dei miei bookmarks. E mi scuso, come ho gia' fatto, per la reazione eccessiva.
Ah, a proposito: sono troppo vecchio per fare il pinocchietto. Un 35 anni fa, forse, avrei potuto esserlo.

 
192.168.0.0/24
, attraverso l'interfaccia eth1.
Sì, ma in realtà, ai fini di ciò che intende fare l'autore del post
originario, è errato s-nattare l'intera subnet.
Ergo, sostituisci quella subnet con l'host specifico.

 saccenteria.
Dirti che esattamente quello che chiedi e` qua e` saccenteria?
http://iptables-tutorial.frozentux.net/iptables-tutorial.html#SNATTARGET

 Un link mirato alla documentazione E` una risposta.
Si, ma e' una risposta del piffero.
Ora, se permetti, ho capito molto di piu' dalle risposte datemi da altri
che non dalla tua: l'ennesimo tutorial, gia' letto, gia' visto. E non
venirmi a dire COME devo capire le cose, non e' tuo diritto.
Vuoi risparmiare tempo? non rispondere, non leggere.
Il resto del messaggio non voglio neanche leggerlo, comunicazione
chiusa, grazie a chi mi ha aiutato.

 grazie a chi mi ha aiutato.
E per fortuna che sono passati 35 anni da quando facevi il
pinocchietto...sei maturato molto,vedo.

Braindead ha scritto:

*PLONK*

 Dire che non hai capito un cazzo di Usenet è un eufemismo..
dire che non hai capito un cazzo della vita e' un eufemismo.

 *PLONK*
Comodo plonkare,comodo tapparsi le orecchie e urlare BA BA BA BA come un
bambino dell'asilo,tagliando la parte di reply che ti dimostra che hai
torto marcio:
http://iptables-tutorial.frozentux.net/iptables-tutorial.html#SNATTARGET
Mbah.