PDA

View Full Version : PORT FORWARDING


f@b10
30-11-2016, 16:23
Ciao a tutti volevo avere info sulla gestione dei firewall. Nello specifico se avessi un firewall in una rete LAN e volessi far ragiunger dall'esterno uno specifico server con IP privato, dovrei fare una regola sul firewall che reindirizzi a quel server? e se è così tramite quale porta ?
Da quello che ho capito è un mascheramento dell' IP di una LAN che chiaramente non deve essere esposto alla rete.

Se potete datemi un infarinatura sul PORT FORWARDING magari con un esempio.

grazie

alfonsor
30-11-2016, 17:55
no non è un mascheramento fatto per evitare di esporre lo ip del tuo server su internet; è che l'ip del tuo server è locale, ha senso solo nella tua lan e perciò non è utilizzabile dall'esterno di questa

pensa a tua zia che vuole vedere le foto che hai messo su un tuo server web su un computer di casa (si prima di qualche anno fa non esisteva il cloud ed i siti ftp aggratis e non era strambo fare una cosa simile :P)

tua zia ha ip 88.9.23.2
tu hai ip 77.98.2.32
il tuo server gira su un computer con indirizzo 192.168.0.11
il tuo server accetta connessioni tcp sulla porta 80

se ci metti anche che il browser di tua zia userà una porta a caso per instaurare la connessione, diciamo la porta 49112, avrai una cinquina:
<88.9.23.2,49112,77.98.2.32,80,tcp>

questa cinquina è "unica al mondo" e rappresenta una connessione

come vedi, tua zia si potrà connettere solo al tuo indirizzo ip pubblico, ovvero l'indirizzo della interfaccia WAN del tuo router

quando questa connessione arriva al router, il router controlla se esiste una regola NAT che lo istruisce a rimandare (forwarding) la connessione ad un host della sua rete locale

la regola dirà al router che ogni volta che arriva una connessione sulla WAN (77.98.2.32) sulla porta 80 con protocollo tcp, dovrà rimandarla allo host 192.168.0.11

questo meccanismo modifica il destinatario e per questo si chiama DNAT

per cui la pagina di configurazione di una regola DNAT avrà tre parametri da definire come minimo:
- protocollo
- porta
- indirizzo locale a cui rimandare la connessione

spesso e volentieri troverai un quinto parametro
- porta di destinazione

questa è utile perché, continuando con il nostro esempio, la porta 80 è spesso usata dai router per le proprie pagina di configurazione e quindi tu dirai a tua zia di scrivere nel browser l'indirizzo http://77.98.2.32:91 ed istruirai il router a rimandare le connessioni sulla wan porta 91 protocollo tcp allo host 192.168.0.11 porta 80

in alcune pagine di configurazioni più complesse potrai trovare anche molti altri parametri, ma che fanno da filtro e non entrano direttamente in gioco nel DNAT, ad esempio potrai dire al router di accettare solo connessioni da un determinato ip e di rifiutare tutte le altri o l'inverso (cioè rifiutare solo quelle da un ip ed accettare tutte le altre) e via dicendo

f@b10
01-12-2016, 18:37
Spiegazione più semplice (nella sua complessità) non potevi farla.
L'unica cosa che mi sfugge è la scelta della porta. Avviene a seconda del servizio che voglio far fare al mio server in LAN ? oppure posso usare qualsiasi porta ?

Grazie mille comunque

alfonsor
01-12-2016, 18:57
le porte in gioco in una connessione

- la porta usata dal client è scelta a caso; quando instauri una connessione, puoi definire la porta, ma se usi la porta 0, dici al meccanismo (stack tcp/ip) di usare una porta qualsiasi, di solito almeno superiore a 1024 (normalmente superiore a 16000)

- la porta su cui un server ascolta si può normalmente scegliere, impostandola tra i suoi parametri di configurazione; ci sono porte "standard", ad esempio un server web usa la 80 per http o 443 per https, un server ftp usa la 21, telnet la 23, ma puoi usare qualsiasi porta (che ovviamente non sia in uso da parte di un altro server su quello host)

- la porta iniziale e finale di una regola di DNAT, sono la seconda la porta sulla quale il server dello host a cui la connessione viene rimandata è in ascolto, la prima la puoi scegliere tu come ti pare, ovviamente quella porta non dovrà essere in uso da parte di un server sul router; il cliente per fare la connessione userà la prima porta (vedi esempio della zia e la porta 91)