miércoles, 28 de octubre de 2015

INSTALAR OPENVPN MEDIANTE CERTIFICADOS X.509 EN RASPBERRY Pt.2

En este tutorial seguiremos con la configuración de "OPENVPN" en los clientes Windows y Android.
Como comentábamos en la primera parte del tutorial, los certificados y claves se han guardado en la carpeta "/etc/openvpn/2.0/keys/". No hace falta decir que éstos tienen que alojarse en un lugar seguro, con los permisos restrictivos y asegurarlos con una "passphare".

Para configurar nuestros clientes, necesitaremos los siguientes archivos:
  • ca.crt: Certificado público de la Autoridad Certificadora.
  • usuario1.crt : Certificado público del cliente.
  • usuario1.key: Clave privada del cliente.
  • ta.key: Clave de autentificación TLS.
Estos lo podremos copiar de la forma que creamos oportuna (pendrive, SCP,SFTP,...) para exportarlos en los dispositivos que utilicemos para la "VPN".

INSTALACIÓN EN WINDOWS

Lo primero que debemos hacer es descargar e instalar el cliente Windows desde https://openvpn.net/index.php/open-source/downloads.html.
Una vez instalado nos dirigimos al directorio donde hemos instalado "OPENVPN" (Archivos de programa/openvpn).
En la carpeta "sample-config" veremos diferentes archivos a modo de ejemplo de configuración (client, server,...).









Copiaremos el archivo "client.ovpn" y lo trasladaremos a la carpeta "config". Es aquí también donde tenemos que copiar los certificados y claves necesarias para el cliente.












Editaremos el archivo de configuración "client.opvn" y dejamos las siguientes líneas:

client # Declaramos que se trata de un cliente.
dev tun # Interface virtual que utilizaremos.
proto udp # Protocolo usado.
remote ip_pública 1194 # Nuestra ip pública mas el puerto de acceso.
resolv-retry infinite # Trata de resolver infinitas veces la conexión con el servidor.
nobind # No es necesario usar siempre el mismo puerto local de origen para iniciar la #conexión.
persist-key # Preserva la clave usada ante reinicio para no tener que volver a leerla.
persist-tun # Mantiene la interfaz TAP levantada si hay un reinicio de la VPN.
# Ruta de los certificados:
ca ca.crt
cert usuario1.crt
key usuario1.key

remote-cert-tls server # Comprobacion del certificado TLS en el servidor.
tls-auth ta.key 1 # Clave de autentificacion TLS.
comp-lzo # Habilitar la compresion en el tunel VPN.
redirect-gateway def1 # Redirigimos todo el trafico a traves de la VPN.
verb 3 # nivel de informacion que se guardara en el archivo log.

Una vez guardado el archivo, pasaremos a probar el correcto funcionamiento del programa.
Abrimos el ejecutable desde "Inicio > Todos los programas > OpenVPN > OpenVPN GUI". Es importante abrirlo como administrador porque sin privilegios no podremos conectarnos a la red interna de la VPN.
Aparecerá un pequeño icono en la parte inferior derecha con el que podremos conectarnos:










Procedemos a verificar que conecta correctamente y nos asigna una ip dentro de la subred fijada para los clientes vpn.








De esta forma podremos ya acceder a nuestra red interna sin problemas.


INSTALACIÓN EN ANDROID


Lo primero que debemos hacer es instalar desde Playstore un cliente compatible, como por ejemplo "OPENVPN Connect for Android".
Una vez instalada la aplicación crearemos un archivo de configuración  rellenando los mismos datos que vimos en el cliente Windows, o simplemente copiando el archivo "client.opvpn" en la carpeta que deseemos del dispositivo móvil.
En esta carpeta agregamos también los certificados y claves para el cliente.

Abrimos la aplicación y pinchamos en "import" para importar la carpeta que contiene el archivo de configuración, los certificados y las claves:



En el siguiente paso seleccionaremos "import Profile from SD card":















Por último pulsamos en connect y esperamos a que se validen los certificados y las claves configuradas:















Si la conexión es satisfactoria observaremos que estamos conectados a la "VPN" y que se nos ha asignado una ip dentro de la  subred 10.8.0.0/24.

En el siguiente tutorial veremos como configurar "OPENVPN" por compartición de claves privadas.

Hasta una nueva entrada....

No hay comentarios:

Publicar un comentario