Come rendere i server WebDictate, BroadWave, Broadcam, Axon, ScreenStream, FlexiServer, QuorumWeb, ecc. accessibili a internet pubblico.

Il problema:

si desidera gestire un server sotto un router NAT o un firewall e non è possibile configurarlo per esporre il server su internet pubblico.

NOTA: per l'aiuto nella configurazione di un NAT o di un firewall, leggere qui.

In questa guida si indicheranno il server (quello dietro al router NAT) come "ServerUtente" e l'host pubblicamente accessibile com"HostPubblico".

La soluzione:

Secure Shell (ssh) Port Forwarding (a volte indicata come tunneling). Questo è dove le connessioni a una data porta di un host pubblicamente accessibile ("HostPubblico") vengono inoltrate alla porta del server utente ("ServerUtente") per mezzo di un tunnel precedentemente impostato.

Cosa serve

  1. Un host pubblicamente accessibile - un host con un nome molto conosciuto o un indirizzo IP
  2. Un server ssh (per suggerimenti leggere di seguito)
  3. Un client ssh - si raccomanda caldamente Putty, da http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.
    Questa guida utilizzerà soltanto il componente plink.exe di Putty.

ISTRUZIONI

Preimpostazione:

  1. Installare un server ssh sull''"HostPubblico" (per suggerimenti sui server e istruzioni dettagliate sull'esecuzione, leggere quanto sotto riportato).
  2. Assicurarsi che il firewall dell'HostPubblico consenta le connessioni sulla porta ssh 22.
  3. Assicurarsi che il firewall dell'HostPubblico consenta le connessioni sulla porta scelta (scegliere una porta sopra 1000, 1185).
  4. Scaricare plink.exe dal sito Putty: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
  5. Salvarlo su c:\\WINDOWS sul "ServerUtente"

Al momento di attivare l'inoltro:

sul ServerUtente:

  1. aprire una finestra di comando (Avvio -> Esegui -> comando)
  2. Digitare nel comando:
    plink -N -R 0.0.0.0:1185:localhost:85 HostPubblico
    in cui:
    1185 è la porta scelta a cui connettersi
    85 è la porta utilizzate dal server della procedura del server utente su ServerUTente
    HostPubblico è il nome dell'host (o indirizzo IP) dell'host pubblico.

Dopo aver inserito nome utente e password (validi su ServerPubblico), verrà creato un tunnel tra la porta 1185 sull'HostPubblico e la porta 85 sul ServerUtente. Quando i programmi (come Internet Explorer) cercano di connettersi alla porta 1185 sul ServerPubblico finiranno per connettersi alla porta 85 del ServerUtente.

In caso di problemi inserire lo switch "verboso" ("-V") per aumentare l'output del debug. Possibili problemi comprendono:

  1. la porta scelta potrebbe essere già in uso - scegliere una porta differente.
  2. Gli errori di connessione o di timeout indicano in genere che il nome dell'HostPubblico non è corretto (provare l'indirizzo IP) o che il firewall dell'HostPubblico blocca la porta 22 o la porta scelta.
Il suddetto comando plink potrebbe essere comprese in uno script che si avvia automaticamente con l'autenticazione o in altro modo.

Testare l'impostazione:

cercare di utilizzare il programma del cliente per connettersi alla porta scelta sul ServerPubblico.
Ad esempio, per utilizzare Internet Explorer per connettersi normalmente a BroadWave (utilizzando la connessione diretta):

http://ServerUtente:85

o utilizzando l'impostazione sopra descritta:

http://ServerPubblico:1185

Impostazione del server Secure Shell (ssh):

Il ServerPubblico necessita di un server ssh ad esso installato. Esistono alcune opzioni, alcune delle quali open source, altre sono offerte commerciali. Le offerte commerciali sono in genere più semplici da installare e configurare e hanno il supporto tecnico. Di seguito sono elencate alcune opzioni commerciali:
http://www.ssh.com/products/client-server/
http://www.bitvise.com/winsshd

È qui disponibile un'opzione gratuita (copSSH): http://www.itefix.no/phpws/

Per installare e configurare copSSH:

  1. scaricare il pacchetto di installazione
  2. decomprimere e avviare setup.exe
  3. accettare tutte le impostazioni di default durante l'installazione
  4. aprire il file con notepad o programmi simili:
    C:\Program Files\copSSH\etc\sshd_config
  5. Cercare la riga" "#GatewayPorts no", modificarla con "si" e rimuovere #, in questo modo:
    GatewayPorts si
    (Questo permette la connessione degli altri host alla porta scelta, non solo dei programmi attivi sull'HostPubblico).
  6. Riavvia ServerPubblico