Uno dei principi basilari della comunicazione tra computer è il tunneling cioè la facoltà di incapsulare un protocollo all’interno di un altro protocollo. Questa capacità è molto utile per esempio a chi vuole superare i blocchi imposti dai firewall all’interno di una rete aziendale. Vediamo allora come creare tunnel SSH con putty per raggiungere un sito bloccato superando il firewall.
Vediamo intanto di capire con uno schema di cosa si tratta. Come puoi vedere dall’immagine qui sotto in una connessione normale l’accesso a determinati siti può essere bloccato da un firewall che controlla ogni richiesta in uscita e, applicando alcune regole, decide se consentire o meno la navigazione.
In una connessione attraverso tunnel ssh invece la richiesta al sito viene fatta da un computer che sta al di fuori della rete protetta dal firewall. Questo stesso computer comunica con il pc dietro al firewall attraverso il protocollo ssh creando un tunnel dentro al quale passa anche il traffico web verso il sito bloccato. Succede così che il firewall vede transitare solo il traffico SSH e lo lascia passare perché per questo tipo di protocollo non ha regole da applicare.
Bene dopo la teoria ora veniamo alla pratica per capire come creare tunnel ssh con putty ipotizziamo di avere il server ssh (quello all’esterno del firewall) che risponde sul suo indirizzo ip pubblico sulla porta 22. Scarica Putty dal sito ufficiale e poiché non necessita di installazione, avvialo con un semplice doppio click.
Nella casella host name or IP address inserisci l’indirizzo ip pubblico del server ssh remoto, controlla che la porta sia quella corretta, su Connection Type seleziona SSH. Poi dal menù di sinistra sotto la categoria Connection, alla voce SSH scegli Tunnel. Nel riquadro delle impostazioni di destra nella casella Source port inserisci un numero di porta superiore a 1024 (per evitare conflitti con le porte dei servizi standard… nell’esempio è 12345) e segnatelo da qualche parte. Questa porta ti servirà tra poi per configurare il browser. Ora dalle caselle sotto Destination scegli Dinamic e clicca sul pulsante Add.
Ora è giunto il momento di collegarsi al server ssh. Clicca su Open e quando ti appare la schermata del terminale con la richiesta di username e password inseriscile. Dopo la connessione non chiudere il terminale ma lascialo aperto e ridotto ad icona. Il tunnel a questo punto è aperto e ora dobbiamo farci passare il traffico web configurando a dovere le impostazioni proxy del browser. Ogni browser ha la propria schermata di impostazioni e quella che vedi qua sotto è quella di Firefox. Devi selezionare Configurazione manuale del proxy, ed impostare come proxy localhost oppure 127.0.0.1, e come porta quella che hai scelto nelle impostazioni di Putty (nell’esempio avevamo scelto 12345).
Conferma con ok e da questo momento puoi navigare attraverso il server remoto. Ora che hai capito come creare tunnel ssh con putty puoi navigare sfruttando la connessione del server ssh bypassando le limitazioni del firewall.