Túnels SSH (I): Evadint proxys i obtenint privacitat

Sempre m’ha agradat el servei SSH i cada dia hi trobo més utilitats.  Encetarem una petita sèrie d’articles dedicats a aquest servei i les múltiples aplicacions que s’hi poden trobar.  Permeteu-me començar per l’ús de túnels SSH per a evitar proxys, ja que fa poc he hagut d’utilitzar-ho.

Imagineu un escenari on s’ens restringeixi l’accés a internet, ja sigui que ens censuren pàgines web per continguts, domini o simplement per protocol o port.  La forma més simple d’evitar-los és utilitzant proxys, i tenim moltes opcions.  També podria ser que utilitzéssim una xarxa de la qual ens en fiem poc i vulguem un canal encriptat per a les nostres comunicacions.  Podríem utilitzar TOR, tot i hem de ser conscient dels seus “petits” problemes de seguretat, i que també obtindrem accés a la seva deepweb . Però com ha bons informàtics sempre ens podem plantejar la típica pregunta.. M’ho puc muntar jo?

Doncs si, i a més obtenint uns nivells de privacitat (que no anonimat) molt decents i tot gràcies a un servidor SSH que tindrem instal·lat a casa i un parell de comandes!  Tot això queda subjecte a que els proxys que ens censuren les connexions no ens filtrin l’accés al nostre servidor SSH.  D’aquesta forma ens connectarem al nostre equip de “casa” i desde aquí cap als continguts censurats.

Així doncs a casa necessitem un equip que farà de servidor amb un sistema Linux.  Per a instal·lar el servidor SSH tan sols hem de fer sudo apt-get install openssh-server openssh-client

També necessitarem redirigir el port 22 del nostre router al nostre pc i sobretot tenir uns passwords robustos ja que el serveis SSH serà repetidament atacat cada dia (ho podeu veure als registres de linux /var/log/auth.log)

Un cop tenim el servidor muntat passarem a la part del client, on utilitzarem bàsicament un client SSH i -opcionalment- un programa per a redirigir tot el trafic mitjançant socks, i aquest dependrà del sistema operatiu  que tinguem.  D’aquesta manera, amb el client SSH ja podrem redirigir totes les aplicacions que permetin l’ús de proxys – com el navegador – i amb el programa de sockets podrem redirigir virtualment qualsevol programa per a que utilitzi el túnel.

Windows

Per a windows utilitzarem Putty i ProxyCap.

Putty és un excel·lent client SSH que ens permetrà connectar-nos com a clients i crear túnels.  Per a fer-ho primer configurarem el túnel indicant el port on s’ha de posar a escoltar i que serà de tipus dinàmic -i com sempre farem Add per afegir aquesta configuració- .

I després configurarem la sessió com a client SSH, i de pas guardarem la configuració per no haver de tornar-hi un altre dia.  Tan sols afegint el nom del domini de casa nostra.

Amb això ja ho tindrem tot configurat per a poder fer que el nostre navegador pugui utilitzar el túnel.  Tan sols caldrà anar a les preferències de xarxa del navegador i configurar-hi com a proxy el localhost i el port 1980.  Arranquem la sessió SSH amb Putty i ens demanarà l’usuari i password de la nostra compte al servidor.

Però no ens quedem aquí, també podem redirigir tot el tràfic del nostre pc cap al túnel utilitzant socks5 i així qualsevol aplicació funcionarà amb el nostre túnel.  Per a fer-ho configurarem proxycap.  Primer configurarem “l’entrada al túnel” que sera el port que s’ha obert en la nostra màquina client, senzillament anem a la opció Proxies, fem new i omplim els camps tot indicant un nom, l’equip localhost i el port que serà el mateix que hem indicat en l’apartat de túnels SSH al putty.

Ara anirem al l’apartat Rules, on podem configurar quins programes han de utilitzar aquest túnel.  Per a simplificar-ho farem que tots l’utilitzin assegurant-nos així que tot el tràfic passa per el nostre túnel xifrat i particular.  Per a fer-ho utilitzarem el menú Rules i de nou botó new i configurarem amb especial compte que el noms DNS es resolguin remotament i que tant el protocol TCP com UDP siguin re-dirigits.

Un cop fet tot això tan sols queda activar el ProxyCap i començar a gaudir de Internet.

Linux

Amb linux, com sempre, la cosa es redueix a un parell de línies de comandes.  Per un costat emprarem el client ssh per a establir el túnel i per altre tsocks per a redirigir tot el tràfic mitjançant sockets.

Primer instal·larem els paquets, si és que encara no els tenim ja.

sudo apt-get install openssh-client tsocks

Tot seguit crearem el túnel amb la comanda:

ssh 1980:localhost:22 usuariServidor@elMeuServidorSSH.cat

Ens demanarà usuari i password.  En cas de que no vulguem obtenir una shell també podem afegir a la comanda anterior el paràmetre -N

Ara ens toca configurar tsocks per a que utilitzi el túnel que hem creat, res més fàcil que modificar l’arxiu /etc/tsocks.conf i modificar les tres línies següents que son auto-explicatives:

server = 127.0.0.1

server_type = 5

server_port = 1980

De nou, per utilitzar un navegador o aplicació que permeti proxy l’hi indiquem en la seva configuració que utilitzi localhost i port 1980.  Si l’aplicació no permet proxy podem forçar l’ús del túnel mitjançant els sockets aplicant una comanda del tipus tsocks

Anuncis

~ per madyyelf a 25 Setembre 2013.