Creare un proxy utilizzando un tunnel SSH per bypassare il firewall aziendale

tunnelssh

In questo articolo vi verrà spiegato come creare un proxy sock utilizzando il servizio SSH.
La creazione di questo tipo di proxy comporta due vantaggi:

1 – ogni comunicazione attraverso il proxy viene criptata (essendo SSH un protocollo sicuro)
2 – utilizzando il proxy si scavalcano le restrizioni imposte dai firewall aziendali

Ecco lo schema sintetico di cosa andremo a fare con il tunnel / proxy SSH

ssh

I prerequisiti per creare questo tipo di proxy sono 2

1 – dovete avere la porta 22 aperta in uscita verso internet
2 – dovete avere accesso SSH ad una macchina esterna. E’ sufficiente ad esempio avere un sito web che permette l’accesso via SSH

Procediamo.
Windows di suo non ha un client ssh, dobbiamo quindi scaricare un programma per stabilire una connessione SSH.
Putty è il programma che fa al caso nostro: è opensource e gratuito. (si scarica da qui)

Lanciamo Putty e nella schermata iniziale inseriamo l’indirizzo IP della macchina sui cui gira il server SSH

putty01

Ora seguendo le indicazioni in figura sotto

1 – selezionate SSH
2 – selezionate Tunnels
3 – selezionate Auto
4 – selezionate Dynamic
5 – scegliete la porta (tra 3000 e 65000)
6 – premete Add

ssh2

Finalmente potete aprire la connessione premendo Open

Inserite le credenziali di accesso a SSH (login/pass) e lasciate Putty aperto

Ora dovrete configurare il vostro browser (o qualsiasi altro programma: msn, skype, utorrent etc etc) per utilizzare il proxy appena creato.

Prendiamo ad esempio la configurazione di Firefox

Andate sul menu Strumenti –> Opzioni…
e selezionate il tab Avanzate. Ora premete su Impostazioni..

ff01

Inserite qui i dati del proxy appena creato con la porta che avete scelto (nel mio caso la porta è la 1080)

ff02

Date OK e provate a navigare.
Se tutto funziona a dovere il vostro IP dovrebbe essere quello della macchina dove risiede il server SSH.

Se volete fare il tutto in modo più veloce basterà installare sulla vostra macchina CygWin e digitare nel terminale il seguente comando:

ssh -D 8182 utente@server

Dove utente è il vostro login e server è l’indirizzo ip della macchina dove risiede il server SSH

CONDIVIDI
ARTICOLI CORRELATI
11 commenti a “Creare un proxy utilizzando un tunnel SSH per bypassare il firewall aziendale”

Mi sfugge qualcosa, se il pc client si trova dietro un firewall aziendale e quindi si presuppone che se è un firewall serio la porta 22 sia chiusa e apribile solo dall’amministratore di rete, come fa l’user a rendere ad utilizzare questa guida????

Inviato da ale il 24 luglio 2009 alle 13:07

Infatti, come ho scritto, un prerequisito è che la porta 22 IN USCITA deve essere aperta e in molte realtà aziendali spesso lo è. Potresti comunque far girare il server SSH sulla porta 80 (HTTP) o 443 (HTTPS) che di sicuro sono aperte.

Inviato da MAMBRO il 24 luglio 2009 alle 13:11

ma su un firewall aziendale serio le porte 80 e 443 sono si aperte ma anche quelle più sottoposte a, come dire, controllo, un amministratore, se tale, capirebbe facilmente l’inghippo.

Inviato da ale il 24 luglio 2009 alle 16:08

Certo… ma ricorda che essendo in un tunnel SSH tutto il traffico è criptato

Inviato da MAMBRO il 24 luglio 2009 alle 16:13

io penso che il problema non è decriptare il traffico ma proprio che su quelle porte (almeno la 80) ci Sia del traffico criptato.

Inviato da ale il 24 luglio 2009 alle 16:21

bello bello… mi piace… ma… domanda… volendo installare su un pc di casa un server ssh… cosa consiglieresti?
googlando rapido ho visto FreeSSHd … ma non l’ ho ancora provato… lunedì @ work mi sa che faccio due prove…
sono stufo del lento refresh del vnc per vedere le pagine che quello stupido sonicwall si inventa di categorizzarmi come non consentite!!!

^_^

Inviato da Alebrescia il 25 luglio 2009 alle 02:28

[…] Mambro: Interessante guida per Bypassare il Firewall aziendale utile a crearsi un proxy utilizzando un tunnell SSH. Continua a leggere… […]

Inviato da ? Guida per Bypassare il Firewall Aziendale e crearsi un proxy | Tecnofollia il 25 luglio 2009 alle 11:16

Salve. Vorrei sapere… è possibile attuare questo procedimento, invertendo server e client ssh? Cioè, il pc che fa da proxy che sia il client, e quello che deve navigare su internet sia il server. Si potrebbe per esempio, in putty ssh tunnel, invece di porta remota, cliccare sulla voce “local”. Funzionerebbe?

Inviato da Daniele il 19 ottobre 2009 alle 17:24

ciao !! ti ringrazio molto !!
Ti sarei ulteriormente grato se mi spiegassi come settare il programma “jdownloader” perchè con firefox ho capito e funziona, l’ip è quello della macchina in remoto, ma con jdownloader non capisco bene come settarlo,

ancora grazie !!

Nicola

Inviato da Nicola il 8 febbraio 2010 alle 11:52

Se vi serve per far passare skype dovete toccare anche le iptables: http://robotics.rtfmnet.com/?p=38

E’ un articolo in inglese, abbastanza tecnico, ma per i volenterosi non dovrebbe essere un problema.

Soprattutto, funziona.

Inviato da kemper il 8 giugno 2010 alle 11:11

come faccio a sapere login user e password?

Inviato da christian il 12 ottobre 2011 alle 23:28
Lascia un commento

Captcha - risolvi l\'operazione per inviare il commento * Time limit is exhausted. Please reload CAPTCHA.