none
Rendere accessibile il server dall'esterno RRS feed

  • Discussione generale

  • Salve,

    Mi trovo in questa situazione: ho una rete abbastanza complessa in cui ho un server con IP 10.0.0.51 che devo rendere accessibile all'esterno. Questa rete è composta principalmente da 3 calcolatori con IP 10.0.0.34, 10.0.0.252, 10.0.0.51 collegati a un router che esce all'esterno. nelle configurazioni del router ho notato che ha impostato come port forwarding a 10.0.0.252 sulla porta 80.Nel calcolatore 10.0.0.252 è installato windows server. Nel calcolatore 10.0.0.34 è installato IIS e al suo interno ci sono vari siti web ed è gia accessibile all'esterno tramite download.nomedominio.it. Mentre digitando mail.nomedominio.it si viene reindirizzati su 10.0.0.252 ove vi è installato il server delle mail. Quello che vorrei fare io è far si che il server 10.0.0.51(con IIS installato) sia accessibile tramite site.nomedominio.it. Come devo fare? Grazie 

    martedì 29 maggio 2012 19:01

Tutte le risposte

  • Non capisco bene i dati del problema: 3 computer  (IP 10.0.0.34, 10.0.0.252, 10.0.0.51) . Questo è il quarto  10.0.0.252 ??

    Indipendentemente dal numero di pc se hai già un forward della porta 80 ( 10.0.0.252:80 <--> ip_esterno:80 ) non ne puoi avere un'altro sulla stessa porta!

    Poresti creare un forward  porta 81 verso il tuo IIS server  ( 10.0.0.51:80 <--> ip_esterno:81 ) che sarebbe raggiungibile dall'esterno  http://site.nomedominio.it:81 ma capisco che non è ciò che vuoi....

    Concludendo non è possibile avere una porta "forwadata" verso più hosts utilizzando  un semplice router / firewall ma servirebbe un bilanciatore/reverse proxy capace di inoltrare il traffico in base all'URI...  


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!




    martedì 29 maggio 2012 19:59
    Moderatore
  • I PC sono 3 IP 10.0.0.34, 10.0.0.252, 10.0.0.51 il forward è sulla porta 80 verso 10.0.0.252. Io questa rete l'ho già trovata così però dovrebbe essere possibile fare quello che chiedo dato che se dall'esterno digito download.nomedominio.it vado sull'IIS del 10.0.0.34 mentre digitando mail.nomedominio.it vado sulla pagina http del server delle mail (Mdaemon) installato su 10.0.0.252. O sbaglio?
    martedì 29 maggio 2012 20:08
  • Se ho capito bene la tua struttura, vale il post precedente ciò che vuoi non è possibile!

     Il forward può essere descritto come una relazione uno a uno.  Una porta 80  <--> Un host porta 80

    oppure dovresti avere più ip pubblici:
    10.0.0.34:80 <--> ip_esterno_1.2.3.4:80
    10.0.0.51:80 <--> ip_esterno_1.2.3.5:80

    dove:
    mail.nomedominio.it :25        = 1.2.3.4:25
    download.nomedominio.it:80  = 1.2.3.4:80
    site.nomedominio.it:80           = 1.2.3.5:80
      

    Cosa intendi con "forward è sulla porta 80 verso 10.0.0.252" ? E' il tuo router, giusto?


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!


    martedì 29 maggio 2012 20:23
    Moderatore
  • E' il router della ditta per cui lavoro. Lo so come funziona il forward delle porte infatti credevo che il router fosse configurato per gestire più server su porte diverse ma poi mi trovo ad avere un router che mappa la porta 80 a 10.0.0.252 e sempre tramite la porta 80 riesco a connettermi con download.miodominio.it sul'IIS di 10.0.0.34 e con mail.miodominio.it sul server di posta di 10.0.0.252 quindi ho pensato che forse devo cambiare qualche impostazione nel windows server del 10.0.0.252 che mi permetta di reindirizzare le chiamate verso gli altri server... possibile?
    martedì 29 maggio 2012 20:46
  • Come ti dicevo (e sono ripetitivo) se vuoi mappare la stessa porta su più host hai le opzioni che ho già citato! (Io non ti so dire cosa ci sia sul tuo .252, solo tu lo puoi sapere, versione del so, ARR...)

    ----------------------------------------------------------

    indirizzi ip diversi
    oppure
    port forward su di un host, il quale  con un po' di intelligenza  "smista" (reverse proxy, url rewriter, bilanciatore )  le connessioni http sui vari IIS interni alla lan
    http://www.iis.net/download/ApplicationRequestRouting 
    http://learn.iis.net/page.aspx/489/using-the-application-request-routing-module
    http://learn.iis.net/page.aspx/659/reverse-proxy-with-url-rewrite-v2-and-application-request-routing/


    http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#forwardreverse


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!





    martedì 29 maggio 2012 21:24
    Moderatore
  • ti spiace rispondere ad una semplice domanda?

    quanti ip pubblici hai ?


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    mercoledì 30 maggio 2012 08:27
    Moderatore
  • Scusate. ma fare un port triggering sul firewall anche no? tipo lascio la 80 sul principale, metto la 8081 che indirizza all'80 sul secondario e 8082 ad esempio che indirizza all'80 sul terzo e nel dns pubblico faccio un sottodominio con il nome che mi interessa che punti all'indirizzo del server che voglio con :nomeporta? 

    A.

    mercoledì 30 maggio 2012 12:24
    Moderatore
  • Scusate. ma fare un port triggering sul firewall anche no? tipo lascio la 80 sul principale, metto la 8081 che indirizza all'80 sul secondario e 8082 ad esempio che indirizza all'80 sul terzo e nel dns pubblico faccio un sottodominio con il nome che mi interessa che punti all'indirizzo del server che voglio con :nomeporta?

    ahemm... AHEMMM... :) nel dns puoi mettere solo un ip senza alcun ":numeroporta",

    l'unico modo per fare questo è usare gli host headers names di IIS ma questo vale solo quando i siti sono ospitati

    sullo stesso IIS e non per essere reindirizzati a siti diversi

    però questo mi ha dato un'idea della quale bisognerebbe fare un esperimento:

    nattare tutto l'http verso un solo IIS, su quel IIS configurare gli host headers names per puntare su siti diversi e su uno di questi siti fare un redirect verso l'altro web server (non so se funzia ma proverei).


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    mercoledì 30 maggio 2012 12:40
    Moderatore
  • ahemm... AHEMMM... :) Edo ma non mi leggi! Va bene che ogni tanto "fumo"...ma ho messo "sottodominio", io intendo questo..lascia stare il dopo porta 8082...ma così funziona alla grande. o no?!?!

    

    mercoledì 30 maggio 2012 13:01
    Moderatore
  • sono andato a vedere il mio pannello di controllo di gestione del dns e io non posso fare quello che tu posti qui perchè quello che mostri è un redirect di website e non un record del dns server.

    tanto che, ti dirò di più, volevo farlo anche per me ma poi ho capito che vale solo per l'http e a me non bastava perchè a me serviva un redirect di qualsiasi porta.

    con quello che mostri comunque funziona ma si chiama redirect di webserver (un po' quello che ho indicato sopra) e non registrazione nel dns.


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org


    mercoledì 30 maggio 2012 13:10
    Moderatore
  • a me lo da nel "pannello sottodominio dns" :-) uso register.it, ma devo essere sincero non so se vada solo su http o lo prenda anche su ip, secondo me si, ti permettono di fare un po tutto. Però con questa soluzione per questo thread secondo me risolverebbe visto che sono server iis..no? Sempre che il suo provider gli faccia mettere le mani sul pannello dns (register me lo mette li) a questo livello. 

    A.

    mercoledì 30 maggio 2012 13:24
    Moderatore
  • Il port triggering non c'entra nulla, mentre  per il redirect di siti su porte diverse (e non), è necessario un web server esposto su internet + 5/10 righe di asp/php addette alla redirezione verso un qualsiasi dominio/sottodominio (senza bisogno di register.it...) ma come abbiamo visto la soluzione con il cambio di porta non interessa.

    Ipotizzo l'infrastruttura pensandola su prodotti microsoft (sarebbe possibile anche con i prodotti free quali apache/haproxy/squid/httpmanifold etc)
    Probabilmente il nostro Rocco sul server con ip .252 ha un ISS >= 7 con installato il modulo di  Application Request Routing  questo gli permette di raggiungere server web interni esponendo una sola porta la 80, utilizzando la varariabili HTTP e strategie di affinity. Quando dice "Mentre digitando mail.nomedominio.it si viene reindirizzati su 10.0.0.252 ove vi è installato il server delle mail."  il significato è si viene collegati all'interfaccia web di mdaemon ( solita porta 80, mentre io pensavo la 25 di mail.nomedominio.it... ).

    Con  ARR si possono ottenere delle configurazioni interessanti:
      consolidare più web servers, esponendoli esternalmente come un sito unico
      bilanciare il carico si un sito su più web servers interni fisicamente separati
      stabilire delle connessioni di affinità basate sul nome o sull'url
      ... etc.  

    Visual Description

    Microsoft Application Request Routing (ARR) is a proxy-based routing module that forwards HTTP requests to content servers based on HTTP headers and server variables, and load balance algorithms.

    There is a feature called host name affinity that is designed specifically for shared hosters.  This example provides an overview of this feature and how it can be used to deploy an environment that is highly available and scalable, easy to manage, and potentially create additional business opportunities

    Common Shared Hosting Deployment


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!

    mercoledì 30 maggio 2012 22:54
    Moderatore
  • be' non avevo dubbi! dove hai 3 server non pubblicati ed un solo ip pubblico a casa mia si usa il port triggering sul router per accedere alla stessa porta su server diversi, ma ero sicuro che la mia soluzione sarebbe stata errata. Attendo con ansia che qualcuno diventi moderatore così da lasciare definitivamente il technet. per ora lascio solo il post. la soluzione del proxy è sicuramente più valida. buon proseguimento.

    A.

    giovedì 31 maggio 2012 06:04
    Moderatore
  • mi rivolgo sia ad Alessandro sia a Gastone: vi chiedo la cortesia di scrivere dei post rimanendo nel puro ambito tecnico senza sforare con frasi dette a mezze parole o espressioni troppo radicali senza che siano seguite da adeguata spiegazione tecnica. siete voi ad insegnarmi che in informatica non c'è una sola strada per unire due punti, che ci sono svariate soluzioni più o meno eleganti e più o meno efficaci e che, spesso, tutto è opinabile. quando siamo in queste situazioni, scriviamo due righe di più per spiegare le ragioni che ci fanno propendere per una soluzione piuttosto che per l'altra.

    vi ringrazio per l'aiuto e per la comprensione.

    ciao.


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    giovedì 31 maggio 2012 06:46
    Moderatore
  • Edoardo, nessun problema, ma gradirei che quando do una soluzione, anche se non elegante ma valida, non venga cassata solamente per questo motivo e qui il moderatore entra in gioco. Se poi il post più sopra tu mi dici che funziona e sotto dicono che non è vero vieni sminuito anche tu.

    Il port triggering ed il port forwarding li uso continuamente e funzionano. Quindi il "port triggering non c'entra nulla" non mi sta bene perchè non è tecnicamente corretto, è solo un modo per sminuire la soluzione dell'altro agli occhi di un profano. Poi se io lo chiamo redirect dns perchè ho sempre usato un provider che me lo mette nel pannello dns con quella dicitura ok, non mi sono mai chiesto se si chiamava diverso, mi basta avere il modo di eseguirlo. Ora lo so, e ti ringrazio.

    Il proxy di Gastone fa esattamente la stessa cosa alla fine della corsa. La mia soluzione è sicuramente meno elegante, ma è veloce e funzionante ed evita al sistemista di turno di andarsi a studiare l'ennesima appliance ed investire tempo quando ha 3 server da raggiungere, su 30 server non è applicabile ma a quel punto se hai 30 server web penso li pubblicherai...magari con degli ip dedicati o con un proxy se hai pochi ip.

    Se il provider non permette redirect http nel pannello dns basta una semplice paginetta html coi link sull'hosting. Poi uno può strutturarselo con calma, dipende da cosa ci devi fare, se sono intranet basta anche non pubblicare i link e dare agli utenti il percorso diretto. Quando dico una cosa non corretta non ho nessun problema ad essere ripreso, imparo, metto in saccoccia e la volta dopo l'ho già assimilata, quando funziona mi basta "ok grazie, la tengo presente".

    A.

    giovedì 31 maggio 2012 08:08
    Moderatore
  • Edoardo, nessun problema, ma gradirei che quando do una soluzione, anche se non elegante ma valida, non venga cassata solamente per questo motivo e qui il moderatore entra in gioco. Se poi il post più sopra tu mi dici che funziona e sotto dicono che non è vero vieni sminuito anche tu.

    qui nessuna soluzione viene cassata e nessuno può arrogarsi il diritto di ritenere che le proprie parole siano la verità assoluta. io non so se sono in grado di fare il moderatore ma secondo me, l'intervento del moderatore, serve quando deve moderare gli animi e non per dare premi e/o punizioni o per dire questa soluzione è meglio di quella o viceversa. chiunque di noi può intevenire contestando solo quando una soluzione è palesemente sbagliata o non funzionante ma contestare non ha senso quando le soluzioni differiscono solo "stilisticamente" e non qualitativamente dal punto di vista dei risultati.

    io non mi sento sminuito dal post di Gastone perchè ribadisco che la soluzione che tu proponi funziona, io credo che (e l'ho scritto sopra) Gastone abbia usato una sequenza di parole "poco felice" senza fornire un'adeguata spiegazione di ciò che intendeva dire ma ciò non toglie che, seppur funzionanti, non condivido nè la tua soluzione che mi fa mettere due "toppe" invece di una sola nè quella di Gastone perchè non serve scomodare ARR ed avere IIS 7 visto che gli host headers names esistono da IIS 5 e il redirect del web si può sempre fare

    ma qui, ripeto, il problema non è tecnico e il mio obiettivo non è trovare la soluzione a questo thread, il mio obiettivo è cercare di far colloquiare dei validi esperti come voi con dei toni moderati e senza flames.

    vi ringrazio ancora.


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    giovedì 31 maggio 2012 08:39
    Moderatore
  • Edo, completamente d'accordo su tutto.

    Quindi ricapitolando ci hai cassate tutte e due le soluzioni! ah ah...mi fido degli host headers..me li andrò a vedere pure io a sto punto!

    P.S So di essere una pallina da flipper impazzita a volte, ma con alcuni (molto pochi...) lo sai che mi infiammo subito...colpa dei trascorsi.

    Però io meno di tutti ti metterei mai in discussione come moderatore e lo sai.

    Ci si vede il 22, se ci sei...facciamoci ste 6 orette di macchina anche stavolta...

    A.

    giovedì 31 maggio 2012 09:00
    Moderatore
  • Mi dispiace aver acceso gli animi ma il "port triggering" è un 'altra cosa e in questa discussione non è utile (se non per accendere gli animi), rileggendo ho capito che  Alessandro "forse" intendeva "port forwarding". 

    Solitamente il "port triggering" (ma non vi è una rfc di riferimento) esegue un "port forwarding" automatico in base a un evento che innesca "il trigger" http://en.wikipedia.org/wiki/Port_triggering
    http://www6.nohold.net/Cisco2/ukp.aspx?pid=80&vw=1&articleid=3706

    Edoardo, sono curioso di sapere come intenderesti usare gli "host header" per risolvere il problema, se ci fosse un server web unico il 3d sarebbe concluso, ma in questo caso con più server dietro il Router/Firewall non comprendo come possano tornare utili. 

    Scusatemi ma siamo qui per aiutare e crescere!


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!



    giovedì 31 maggio 2012 18:26
    Moderatore
  • Edoardo, sono curioso di sapere come intenderesti usare gli "host header" per risolvere il problema, se ci fosse un server web unico il 3d sarebbe concluso, ma in questo caso con più server dietro il Router/Firewall non comprendo come possano tornare utili. 

    Scusatemi ma siamo qui per aiutare e crescere!

    bene, spero che sia pace fatta :)

    per quanto riguarda ciò che intendevo l'ho scritto sopra:

    nattare tutto l'http verso un solo IIS, su quel IIS configurare gli host headers names per puntare su siti diversi e su uno di questi siti fare un redirect verso l'altro web server (non so se funzia ma proverei).

    ovviamente ammettendo che sul web server che fa da frontend arrivino gli host headers originali  e che sui dns pubblici tutti gli host headers diversi puntino allo stesso ip.

    ciao.


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    venerdì 1 giugno 2012 12:25
    Moderatore