PDA

Visualizza la versione completa : Nat interno + pagina asp


wallfire
08-09-2005, 10:36
Scusate Amici ho il seguente problema:

ho un indirizzo ip statico pubblico 80.22.xxx.xx
su questo indirizzo pubblico ho nattato, con Linux versione Suse (utilizzo shorewall), un mio indirizzo interno 192.168.x.xxx.
Suceesivamente nel file rules di shorewall ho aperto la porta 80 visto che dall'esterno devono accedere al web (iis installato).

Tutto funziona correttamente dall'esterno.
Riesco a visualizzare dall'esterno la pagina web.

In lan purtroppo riesco a visualizzare il servizio (home page) ma al momento di scaricare il documento pdf il broswer mi segnala che impossibile visualizzare la pagina.

Ho verificato lo script asp attivo su quella pagina ed ho notato che il file fa riferimento:

NewsFilePathHttp = "http://80.22.xxx.xx/easyvueweb/temppdf/" & fso.GetFileName(NewsFilePath)

Se potessi accedere dall'interno al mio indirizzo esterno avrei risolto il problema......ma non posso visto che se digito l'indirizzo ip pubblico sulla broswer della mia lan, il firewall mi reindirizza su se stesso e mi compare la pagina html di suse.

E' possibile, in qualche modo, accedere dall'interno al mio indirizzo esterno senza digitare la classe interna ma direttamente l'indirizzo ip pubblico.....o........necessariamente, devo cambiare il codice nelle pagine asp?

Grazie

tia86
08-09-2005, 12:21
Sarebbe meglio mettere l'ip privato ma con un piccolo accorgimento si pu fare






PC_A ----> ROUTER ---> Internet
^
|
IIS



Se vuoi che PC_A, riesca a comunicare con IIS devi inserire questa regola nel firewall/router


iptables -t nat -A PREROUTING -i interfaccia_collegata_a_PC_A -d indirizzo IP pubblico del router -p tcp --dport 80 -j DNAT --to indirizzo IP interno di IIS

Stessa cosa se PC_A e IIS sono nella stessa sottorete.

tia86
08-09-2005, 12:33
Ma non che IIS cerca di accedere a se stesso?
In questo caso il trucco sopra non funziona (ip sorgente e destinazione uguali non vanno d'accordo con lo stack ip di win) e fai prima a mettere l'indirizzo di localhost (127.0.0.1) nella tua pagina

Habanero
08-09-2005, 13:34
In ogni caso dalla lan non puoi accedere al suo interno tramite l'indirizzo pubblico.

Ma una domanda... visto che con quella stringa in ASP non capisco cosa ci devi fare... che bisogno c' di fare riferimento esplicito all'indirizzo ip nel codice? Non puoi darlo come url relativo? In questo caso funzionerebbe sempre indipendentemente da chi fa la richiesta. Cosa ci devi fare con la stringa?

E comunque... direi che la sicurezza non c'entra. Per ora ti sposto in Reti e magari loro di sposteranno eventualmente in ASP.

seclimar
08-09-2005, 15:26
trasformalo cosi':
NewsFilePathHttp = "/easyvueweb/temppdf/" & fso.GetFileName

(o simile)

wallfire
08-09-2005, 18:17
caro seclimar,

purtroppo ho tentato di modificare il file asp con il codice da te evidenziato ma purtroppo non funziona.

Da come mi sembra di aver capito e da quanto ho appreso da Habanero non un problema di errata configurazione del firewall in quanto giusto che dalla lan non sia possibile accedere al suo interno tramite l'indirizzo pubblico.

Se cosi fosse ho almeno risolto il problema di insistere su questo punto.
Non credo, a questo punto, che si tratti neanche di un problema che faccia parte del forum reti Lan e Wireless.

Forse soltanto modificando la pagina asp psossibile risolvere il problema.

Che ne dite?

wallfire
08-09-2005, 18:22
Originariamente inviato da Habanero
In ogni caso dalla lan non puoi accedere al suo interno tramite l'indirizzo pubblico.

Ma una domanda... visto che con quella stringa in ASP non capisco cosa ci devi fare... che bisogno c' di fare riferimento esplicito all'indirizzo ip nel codice? Non puoi darlo come url relativo? In questo caso funzionerebbe sempre indipendentemente da chi fa la richiesta. Cosa ci devi fare con la stringa?

E comunque... direi che la sicurezza non c'entra. Per ora ti sposto in Reti e magari loro di sposteranno eventualmente in ASP.


quella stringa in asp mi serve semplicemente per scaricare un file pdf ubicato nel server.
Ad ogni modo non capisco come poter inserire del codice con un url relativo....help me!

Habanero
08-09-2005, 19:26
scusa ma il codice ASP sta sullo stesso server in cui sta il file pdf? sullo stesso web server?

wallfire
08-09-2005, 19:41
Originariamente inviato da Habanero
scusa ma il codice ASP sta sullo stesso server in cui sta il file pdf? sullo stesso web server?

si Habanero, il file Asp contenente il codice descritto in precedenza nello stesso server dove si trova il file pdf e dove installato IIS e che utilizzo quindi come webserver.
Se modifico la riga:



NewsFilePathHttp = "http://80.22.xxx.xx/easyvueweb/temppdf/" & fso.GetFileName

in

NewsFilePathHttp = "http://192.168.x.xxx/easyvueweb/temppdf/" & fso.GetFileName


dove 192.168.x.xxxx corrisponde al mio indirizzo ip interno assegnato al server sulla lan locale.......mi possibile scaricare i file pdf solo localmente o almeno in tutti i pc che si trovano all'interno della stessa classe ip interna.
Viceversa, dall'esterno nn posso pi scaricare il file.


Quindi ho mi funziona solo localmente o solo esternamente ma non contemporaneamente (intranet-internet)

MAh!!!!

wallfire
08-09-2005, 19:49
Sono sempre pi convinto che se non modifico la pagina asp non ne cavo nulla......uffa!! ma le pagine asp non sono il mio forte.

Sono un sistemista, neanche tanto specializzato, figurati con la programmazione......help me!!

Loading