Cómo tener tu propia VPN (y no depender de nadie)

Escrito el , visto 4006 veces Ver usuariopor



El otro día quería ver si era posible tener mi propia VPN, red privada virtual, y sí, lo encontré fácilmente: OpenVPN.

Pero claro, los tutoriales suelen estar bien llenos de información y no todo usuario linuxero está preparado para entenderlo. Así que busqué un poco más y creo que dí con una buena solución.



Primero lo primero, para poder crear tu propia VPN vas a necesitar de tu propio servidor. Yo utilizo varios VPS (Servidores privados virtuales), desde Digital Ocean a Alpharacks, baratos y eficientes, es más, si les interesa les dejo mi referral de Digital Ocean y por ahí algún día puedo pagar el servidor de LinksDV con eso :P y el de Alpharacks también por si les sirve.

Esto implica un costo de unos USD 5 a 20 por mes, dependiendo qué servidor estés utilizando y qué características quieras en él. Pero este no es el único factor a tener en cuenta. Si quieren dividir el costo entre varios usuarios deberán tener MUY en cuenta la transferencia que te ofrece dicho servicio.

Por ejemplo Digital Ocean, es un EXCELENTE servicio pero ofrece anchos de banda y capacidades algo limitadas (contrastan con su excelente servicio, claro) donde un server con 3TB de transferencia cuesta 20 USD por mes.

En Alpharacks encontré VPS a USD 8 por mes que te dan 5TB de transferencia, 2GB de RAM y 100GB de disco, obviamente es lo que utilicé para mi VPS pero la pega es que, por alguna razón, el mejor Ubuntu que te permiten instalar es Ubuntu 14.04.

Y como dije, Linux, si no saben nada de Linux no hagan nada de esto, salvo que quieran aprender y tengan ganas de gastar dinero en algo que probablemente no funcione :D

Una vez elegido el VPS e instalado un sistema operativo acorde (puede ser CentOS o, como en mi caso, Ubuntu) se pueden seguir todos estos pasos que encontré en los manuales de Digital Ocean.

Si quieren hacerlo para aprender está perfecto, te detalla y explica todo con un muy buen nivel, pero tal vez muchas de estas cosas son automatizables. Aprendés un montón, eso seguro.

Si en cambio quieren la versión jeropa-fácil también existe y la encontré en los comentarios de dicho artículo, un usuario creó un script bash que hace exactamente todo eso y MUY bien, lo suficientemente bien como para olvidarse del 99% del proceso, lo encuentran aquí en OpenVPN-Install.

Ahora bien, dicho script tiene sus problemitas, si no logra hacer bien uno de los pasos no corta ni hace rollback, sigue para adelante, la primera vez que lo ejecuté no logró bajar algo y me creó todo mal, la segunda (luego de desinstalar) funcionó perfecto. Eso sí, al momento de generar las keys está por defecto en 2048 bits por lo que se toma un buen rato (paciencia, vale la pena estar seguros).

Tercero la conexión, el script hace todo fantástico y te crea un archivo de config para el usuario que decidas crear (podés crear y eliminar cuantos quieras) pero luego hay que copiarlo a la PC o teléfono desde donde querramos utilizar el cliente de OpenVPN (no problem, pero aviso, por SFTP y listo).

La conexión se logra abriendo dicho archivo de config en el cliente, ya posee las keys correspondientes, no hace falta ingresar ningún password, con ese archivo se puede hacer todo de una y sin pasos en el medio... salvo que... salvo que siempre algo puede fallar.

¿Qué puede fallar? El firewall! así es, IPTABLES en el servidor, Firewall de la Windola en el cliente, en mi caso tenía problemas con el servidor ya que tenía algunas reglas previas de IPTABLES y tuve que liberar el puerto de conexión de OpenVPN con esto:

sudo iptables -A INPUT -p tcp --destination-port 1194 -j ACCEPT
sudo iptables -A INPUT -p udp --destination-port 1194 -j ACCEPT


Me enteré luego de varias googleadas pero ojo con el tema. Algunos proveedores de VPS te bloquean puertos para que no puedas crear tu propia VPN lo que es una negrada (si estás en uno, dejalos como proveedores, garcas), así que a veces hasta te pueden estar bloqueando un port así. Si se van al cuerno pero no usás el servidor para web podés cambiarle la config al 443 del SSL y listo, ese seguro no lo bloquean.

Tanto en Windows como Android, utilizando el cliente de OpenVPN libre, funcionó perfecto. Lo primero que pude corroborar, además de mi IP que ahora es el del servidor, es el poder ver contenidos en Youtube que estan restringidos para los argentinos como, por ejemplo, los de SNL que no nos dejan ver. Con eso ya comprobé que funcionaba perfecto.

No digo que esto sirva como método para piratear cosas porque, al fin y al cabo, uno alquiló un server dando de alguna forma la cara, ante una demanda por la DMCA esos datos van a parar al organismo de justicia que lo solicite si estás usando un servidor de EEUU, no es para hacer maldades ni nada por el estilo tampoco o hasta el FBI puede acceder a esos datos.

Pero para ejercer tu libre derecho de navegar de forma privada, sin restricciones ficticias impuestas por empresas o gobiernos, hay mucho margen y funciona, funciona bien.

El costo, si se comparte, es muy bajo y los datos de uno y el historial de navegación no son filtrados a agencias de publicidad ni vendidos por ahí, es tu LOG del servidor, nadie lo toca.

PS: si está bien configurado podría funcionar para Netflix aunque creo que se pusieron la gorra para filtrarte por tu tarjeta de crédito (país de emisión) para bloquearte contenidos


Comentarios

  1. Consulta:
    porque Ubuntu y no debian 8?

    Citar »
  2. Lucas dijo:
    Consulta:
    porque Ubuntu y no debian 8?



    Porque es mas facil para el usuario final y porque los verdaderos hardcores usan BSD

    Citar »
  3. Lucas dijo:
    Consulta:
    porque Ubuntu y no debian 8?


    por qué Debian si puedo usar Ubuntu? da igual, apt-get all the things, yo porque estoy acostumbrado para pasar de la notebook al server acordándome dónde estan las cosas, la mayoría de los tutos bien hechos son para Ubuntu, los de Debian suelen ser más crípticos y asumen que sos un sysadmin experto a la hora de decirte algo sin aclararte nada o tirándote más info de la que deberían, nunca son didácticos.

    Debian lo uso para cosas que deben quedar simples y estáticas por mucho tiempo y sobrevivir al paso de éste Guiño

    Citar »
  4. También se puede instalar openwrt con openvpn en el router de casa direccionado al puerto 443 y con algún servicio de dns gratis te conectas desde cualquier lado. La ventaja es que navegas como si estuvieras en tu casa y ves todo lo que hay conectado en tu red como local (cámaras, TV, PC, impresora,etc). Me sirvió para saltarme las restricciones del laburo y para usar las wifi abiertas dudosas de los bares y hoteles.

    Citar »
  5. electropalar dijo:
    También se puede instalar openwrt con openvpn en el router de casa direccionado al puerto 443 y con algún servicio de dns gratis te conectas desde cualquier lado. La ventaja es que navegas como si estuvieras en tu casa y ves todo lo que hay conectado en tu red como local (cámaras, TV, PC, impresora,etc). Me sirvió para saltarme las restricciones del laburo y para usar las wifi abiertas dudosas de los bares y hoteles.

    Necesito de tus conocimientos. jajaj como catso hago eso?

    Necesito meterme en el mundo VPN y no se nada.

    Citar »
  6. electropalar dijo:
    También se puede instalar openwrt con openvpn en el router de casa direccionado al puerto 443 y con algún servicio de dns gratis te conectas desde cualquier lado. La ventaja es que navegas como si estuvieras en tu casa y ves todo lo que hay conectado en tu red como local (cámaras, TV, PC, impresora,etc). Me sirvió para saltarme las restricciones del laburo y para usar las wifi abiertas dudosas de los bares y hoteles.

    esa es buena para cuando querés seguir saliendo con tu IP local, en mi caso quería ver unos episodios de SNL que eran bloqueados por tener IP argentino.


    LucasE dijo:
    electropalar dijo:
    También se puede instalar openwrt con openvpn en el router de casa direccionado al puerto 443 y con algún servicio de dns gratis te conectas desde cualquier lado. La ventaja es que navegas como si estuvieras en tu casa y ves todo lo que hay conectado en tu red como local (cámaras, TV, PC, impresora,etc). Me sirvió para saltarme las restricciones del laburo y para usar las wifi abiertas dudosas de los bares y hoteles.

    Necesito de tus conocimientos. jajaj como catso hago eso?

    Necesito meterme en el mundo VPN y no se nada.


    OpenVPN lo podés instalar en Windows también y usar tu PC como "servidor" o, como dice electropalar, si tenés un router que se banque OpenWRT lo hacés desde ahí. Eso sí, no todo router se banca eso.

    Citar »
  7. LucasE dijo:
    electropalar dijo:
    También se puede instalar openwrt con openvpn en el router de casa direccionado al puerto 443 y con algún servicio de dns gratis te conectas desde cualquier lado. La ventaja es que navegas como si estuvieras en tu casa y ves todo lo que hay conectado en tu red como local (cámaras, TV, PC, impresora,etc). Me sirvió para saltarme las restricciones del laburo y para usar las wifi abiertas dudosas de los bares y hoteles.

    Necesito de tus conocimientos. jajaj como catso hago eso?

    Necesito meterme en el mundo VPN y no se nada.


    Somos 2!

    Citar »
  8. Para aquel que quiera hacer solo navegacion privada, Opera viene con VPN. No se que tan confiable es pero funciona bastante bien. La tengo activada en este momento.

    Citar »
  9. OpenVPN es una buena solución para tunelear todo el tráfico.
    Si solo se necesita HTTP/S es más fácil usar un tunel ssh.
    Ej:
    user@localhost:~$ ssh -D 8899 user@vpnhost
    abre un socks proxy en el localhost:8899
    En el navegador se define un proxy socks en localhost:8899
    que originará las conexiones desde vpnhost.
    Algunos softwares soportan definirle un socks5 server, y también se pueden tunelear de esta forma.

    Citar »

Deje su comentario:

(comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador sin previo aviso)

Security Image

Negrita Cursiva Imagen Enlace

Guardar los datos: Si / No