¿Alguna vez te has preguntado qué es ese mensaje de «Conexión no segura» cuanto te conectas a redes Wifi públicas? ¿Quieres aumentar la privacidad de tus conexiones a Internet? Te mostramos como convertir tu Raspberry Pi en un servidor de Red Privada Virtual (VPN) de una forma sencilla y cómo conectarte a ella estés donde estés desde tus dispositivos. Como en casa, en ningún sitio 🙂
Y es que cuando conectamos nuestros dispositivos a Internet a través de nuestro servidor VPN lo que conseguimos es precisamente eso, estar en casa. Y esto quiere decir que podremos utilizar nuestra impresora, acceder a nuestros ficheros compartidos en red y a cualquier tipo de dispositivo que tengamos en nuestra casa. Además de esto, la conexión desde nuestro terminal hasta el lugar donde se encuentre el servidor VPN se hace de una forma mucho más segura, poniéndoselo más difícil a cualquiera que quisiese aprovecharse de nuestra información. Aunque esto tiene un pequeño coste, y más en este caso que lo montaremos sobre una Raspberry, el rendimiento de la conexión se verá un poco perjudicado. Depende de para qué vayas a utilizar esta conexión segura puede ser suficiente, o no, lo que está claro es que te animamos a probarlo.
Nosotros vamos a utilizar una Raspberry Pi Model B, el primer modelo que salió al mercado y el sistema operativo Raspbian Jessie recién instalado en su versión Lite. Si tú tienes otro modelo de Raspberry, no te preocupes, los pasos a seguir van a ser los mismos al trabajar sobre el mismo sistema operativo.
El Proyecto PiVPN
Hemos probado recientemente el método de instalación automático del servidor OpenVPN que nos ofrece la gente de The PiVPN Project y nos ha sorprendido gratamente tanto su funcionamiento como la facilidad del proceso de instalación sobre Raspbian.
Básicamente, la instalación se realiza ejecutando el siguiente comando en nuestra Raspberry:
curl -L https://install.pivpn.io | bash
Una vez ejecutado, comenzará el proceso de instalación:
El proceso de instalación nos guiará paso a paso y nos realizará ciertas preguntas para ajustar la configuración del servicio VPN.
Puedes detenerte en ellas e ir seleccionando la opción que más te convenga pero, si habéis seguido el método de instalación de Raspbian que publicamos anteriormente puedes limitarte a pulsar siempre Enter, aceptando así la configuración por defecto que te propone PiVPN hasta la siguiente pantalla:
Si tenemos contratada una dirección IP fija para nuestra conexión a Internet dejaremos seleccionada la opción por defecto “Use this public IP”. Sin embargo, si al igual que la mayoría no dispones de IP fija y eres usuario de algún servicio de DNS dinámico como No-Ip deberás seleccionar la opción “DNS Entry” y configurar manualmente esta parte.
Si te has perdido en este punto, permítenos recomendarte este post que hemos encontrado en www.realdroid.es donde se explica perfectamente este punto y cómo aprovechar la Raspberry también para este servicio.
Introducimos el dominio DNS que apunta a nuestra Raspberry desde Internet:
Selecciona tu proveedor DNS del listado o la opción Custom si éste no aparece en el listado.
Introduce los servidores DNS que utilizará el servicio de VPN. Puedes seguir la sugerencia y utilizar los servidores DNS de Google como en la captura siguiente:
Nos recomendará reiniciar el sistema una vez finalizada la acción.
Le respondemos Yes y la Raspberry se reiniciará finalizando con la instalación de PiVPN.
El último paso que debemos realizar para dejar preparado el servidor VPN para recibir conexiones desde Internet es crear un Virtual Server / realizar un Port Forwarding en nuestro router para que el puerto 1194 desde Internet sea redirigido al puerto 1194 de nuestra Raspberry Pi, o lo que se llama comúnmente “abrir el puerto 1194”.
En cada modelo de router el procedimiento es diferente, pero poniendo en el buscador de Google tu modelo de router + “abrir puertos”, seguramente encontréis los pasos para hacerlo.
Utilizando nuestro servidor VPN desde nuestros dispositivos
Ya tenemos la parte del servidor de Red Privada Virtual preparada. Ahora vamos a configurar los dispositivos que queramos que hagan uso de este servicio.
El primer paso será el de crear un nuevo perfil de usuario para el servidor OpenVPN que tenemos en casa.
Desde la terminal SSH conectada a nuestra Raspberry, ejecutaremos el siguiente comando:
pivpn add
Le daremos un nombre al perfil que estamos creando, en nuestro caso UsuarioPrueba y le asignaremos una contraseña. Ésta contraseña será la que utilizaremos en nuestra conexión al servidor VPN así que contra más segura, mejor.
Cuando finaliza el proceso, el fichero con extensión OVPN se habra creado en el directorio ovpns y solo queda descargarlo al dispositivo que queramos configurar.
El fichero lo podemos descargar directamente a nuestro PC si utilizamos FileZilla para conectarnos mediante SFTP a la Raspberry, o bien, podemos aprovechar el cliente SFTP integrado en el propio MobaXTerm si lo estamos utilizando como cliente SSH.
Para conectarte a tu Red Privada Virtual desde un equipo Windows, necesitarás descargar e instalar el cliente de OpenVPN (Descarga el fichero con extensión EXE precedido por “Installer, Windows Vista and later”) e importar el perfil OVPN que nos hemos descargado previamente.
Si se trata de otro ordenador diferente, puedes enviártelo por correo electrónico o copiar el fichero OVPN en un Pen Drive y llevártelo donde quieras.
Este fichero OVPN debemos copiarlo en la carpeta bin del directorio de instalación del cliente OpenVPN. De esta forma, cuando iniciemos el cliente OpenVPN en Windows, nos aparecerá la opción de conectarnos usando este nuevo perfil.
Desde este mismo menú del icono de OpenVPN de la barra de herramientas de Windows, pulsamos sobre la opción de conectar:
Nos solicitará la contraseña que configuramos previamente durante el proceso de generación del fichero OVPN:
Pasados unos segundos, la conexión VPN se establecerá y te notificará su estado.
Para dispositivos móviles y tablets Android e iOS, necesitamos descargar de la tienda de aplicaciones la aplicación OpenVPN Connect e importar el perfil del mismo modo que hicimos en Windows.
El camino más sencillo para conseguirlo es enviar el fichero OVPN por correo electrónico a una cuenta que el teléfono ya tenga configurada y abrir el fichero adjunto directamente.
Te mostramos los pasos a seguir desde un terminal iOS para conectarte a tu servidor OpenVPN.
En el próximo post, os comentaremos como utilizar la Raspberry como un servidor de ficheros local aprovechando algún disco duro que tengamos sin uso por casa.
Ahora que ya sabemos cómo acceder por VPN a la red de nuestra casa, tendremos siempre accesibles estos ficheros estemos donde estemos y los recibiremos de una forma segura en nuestros dispositivos.
Excelente Tutorial
Muchas Gracias