Una vez que sabemos qué es Latch y cómo nos puede ayudar a proteger nuestras identidades digitales, podemos empezar a configurar un servidor con OpenVPN y proteger los accesos a nuestra red local al máximo, ya que Latch nos permite mantener los accesos al sistema bajo control de forma permanente, de esta forma, si nos roban o perdemos los credenciales de acceso no podrán conectarse a nuestro sistema.

openvpn_logo

Lo primero que tenemos que hacer es registrarnos como desarrollador en el portal de Latch y añadir una aplicación nueva al sistema y configurarla con los parámetros que se nos piden, tal y como explicamos en este completo manual: Cómo registrarnos y empezar a utilizar Latch.

Descarga de Latch para OpenVPN desde GitHub

Una vez que hemos hecho esos pasos que son necesarios, debemos entrar en el GitHub de Eleven Paths donde se encuentra el plugin para OpenVPN el cual descargaremos de forma gratuita. Una vez que descargamos el .ZIP, procedemos a copiarlo y descomprimirlo en el sistema donde vayamos a asegurar el acceso vía OpenVPN con Latch.

Instalación de Latch para OpenVPN en Ubuntu 14.04 LTS

Nosotros os vamos a enseñar cómo configurar Latch con OpenVPN en Ubuntu 14.04 LTS, lo primero que debemos hacer es instalar el típico gcc, make y por supuesto OpenVPN además de las librerías necesarias.

Instalamos gcc y make:

sudo apt-get install gcc make

Y a continuación las liberías necesarias:

sudo apt-get install libpam0g-dev libcurl4-openssl-dev libssl-dev

Una vez que hemos instalado todo lo necesario, procedemos a irnos a la carpeta de Latch para SSH que hemos descomprimido y ejecutamos el archivo llamado “install” de la siguiente forma:

sudo ./install

Empezará a compilar lo necesario para nuestra distribución y posteriormente lo instalará, en la siguiente captura de pantalla se puede ver este proceso:

latch_install_openvpn

Es recomendable reiniciar el servicio OpenVPN una vez que se ha instalado:

sudo /etc/init.d/openvpn restart

Configuración de latch.conf con ID de aplicación y clave secreta

A continuación nos metemos en la carpeta python y renombramos el archivo latch-model.conf a latch.conf y lo editamos para incorporar el ID de la aplicación y la clave secreta.

cd python/
mv latch-model.conf latch.conf
nano latch.conf

Y editamos el fichero de texto con la información de la web de Latch (ID de aplicación y “secreto”) que tenemos al añadir una nueva aplicación:

latch_id_key_web

#
# Configuration file for the latch PAM plugin
# Identify your Application
# Application ID value
app_id = LlUuYfK2d56O4MqJm6rM
# Secret key value
secret_key = gkRgrzHvMROdhtLtHswVqxDQWkv5NkSPu7meB9k7

A continuación podéis ver una captura de pantalla de cómo quedaría editado:

latch_conf

Una vez editado guardamos y cerramos.

Ahora sólo nos quedaría parear nuestro dispositivo móvil con Latch en el sistema para empezar a funcionar.

Utilización de Latch con un dispositivo Android y Ubuntu

Para utilizar Latch en un dispositivo móvil lo primero que tenemos que hacer es bajarnos la aplicación oficial de las distintas tiendas de aplicaciones:

Una vez que la hemos instalado en nuestro dispositivo móvil, la ejecutamos y nos aparecerá un asistente que nos dirá cómo funciona y para qué sirve la aplicación.

latch_android_openssh_1

A continuación tendremos que introducir la cuenta registrada en Latch, podemos introducir la cuenta de desarrollador sin problemas, los usuarios se registrarán una cuenta de usuario pero los menús en el terminal son los mismos.

latch_android_openssh_2

Una vez que hemos iniciado sesión con nuestro usuario, tendremos un asistente para comenzar a parear servicios con nuestro terminal. Pinchamos en la parte inferior para que nos proporcione un código y parear el teléfono con el servicio OpenSSH.

latch_openvpn_pair_1

En el sistema tenemos que teclear por terminal la siguiente orden:

sudo pairOVPN CODIGO -f RUTA ARCHIVO .CONF

En nuestro caso estamos en /python/ por lo que hemos introducido la siguiente orden:

sudo pairOVPN FyUh3p -f latch.conf

Una vez que ejecutamos esta orden en el ordenador nos aparecerá que el servicio se ha pareado correctamente, a continuación podéis ver el mensaje exacto:

latch_ovpn

Y de forma instantánea y automática, en nuestro terminal móvil nos aparecerá algo como esto:

latch_openvpn_pair_2

Por lo que ya habremos pareado nuestro servicio con un terminal móvil (un usuario), si entramos en el panel de control de Latch vía web nos aparecerá que tenemos un usuario registrado:

latch_openvpn_panel_control

En la aplicación móvil podremos bloquear y desbloquear el servicio cuando queramos, simplemente tenemos que arrastrar el candado del servicio a bloquear.

latch_openvpn_paired

Si pinchamos sobre el nombre o la foto del servicio, nos aparecerán las principales opciones que nos proporciona la aplicación Latch para móviles, como por ejemplo programar los bloqueos a unas determinadas horas del día:

latch_openvpn_android

Para configurar el servicio OpenSSH no había que realizar ninguna configuración adicional en el archivo de configuración, sin embargo en OpenVPN sí hay que añadir la siguiente línea en el archivo de configuración OpenVPN.conf:

plugin RUTA_AUTENTICACION_PAM openvpn

En Ubuntu 14.04 LTS quedaría de la siguiente forma:

plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so openvpn

A continuación os presentamos nuestro fichero de configuración OpenVPN entero para que lo comparéis con el vuestro:

daemon
server 10.8.0.0 255.255.255.0
proto tcp
port 44444
dev tun

push "dhcp-option DOMAIN WORKGROUP"
push "dhcp-option DNS 10.10.2.1"
push "dhcp-option DNS 8.8.8.8"
push "redirect-gateway def1"

push "route 10.10.2.0 255.255.255.0"
tls-auth /home/bron/keys/ta.key 0
ca /home/bron/keys/ca.crt
dh /home/bron/keys/dh.pem
cert /home/bron/keys/server.crt
key /home/bron/keys/server.key

crl-verify /home/bron/keys/crl.pem

cipher AES-256-CBC
tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA
auth SHA512

ifconfig-pool-persist /usr/local/etc/openvpn/ipp.txt
comp-lzo adaptive
keepalive 15 60
verb 3
client-to-client
user nobody
group nogroup
persist-key
persist-tun
plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so openvpn

Una vez hecho esto, procedemos a arrancar nuestro servidor OpenVPN normalmente:

sudo openvpn servidor_openvpn.conf

Probando el funcionamiento de Latch con OpenVPN

Una vez que está todo instalado y configurado, vamos a simular ser un usuario malintencionado que quiere acceder a nuestro servidor OpenVPN. Como somos muy celosos de nuestra seguridad, siempre tendremos el Latch cerrado a menos que vayamos a utilizar el servicio.

Si entramos vía OpenVPN al sistema protegido con Latch, con todos los certificados y también con la autenticación PAM del sistema, en el smartphone nos aparecerá el siguiente aviso:

latch_bloqueo_sistemaSi no desbloqueamos el servicio no podremos conectarnos, por tanto procedemos a desbloquear el servicio y a intentar de nuevo la conexión. Debemos recordar que con OpenVPN no podremos utilizar claves de un sólo uso (One Time Password), por tanto no lo activéis en el panel de control de Latch.

En el terminal del sistema Ubuntu podéis ver las órdenes que hemos introducido, y el log de OpenVPN que nos ha denegado la conexión.

latch_openvpn_prueba_sistema

Si entramos en el panel de control de Latch veremos los intentos de intrusión que hemos tenido y también las claves OTP que hemos generado.

latch_openvpn_panel_de_control_bloqueo

Si levantamos el bloqueo la conexión se realizará satisfactoriamente y sin ningún tipo de aviso. En el equipo servidor OpenVPN nos muestra el siguiente mensaje:

AUTH-PAM: BACKGROUND: user 'bron' failed to authenticate: Authentication failure

A causa de tener el Latch cerrado.

Configurar un segundo usuario para entrar vía OpenVPN

Una vez que hemos instalado Latch, podremos configurar que el usuario “bron1” también pueda usar Latch para conectarse a su cuenta, sin embargo esta acción la debe realizar el usuario “bron1” de forma explícita, desde su terminal o sesión de usuario y haciendo exactamente que el primer usuario (pero con su código generado):

sudo pairOVPN CODIGO -f latch.conf

Actualmente existe una limitación y es que no podremos tener dos usuarios bajo el mismo ID de aplicación en el terminal móvil con el mismo usuario, es decir:

Desde una misma cuenta Latch en el terminal móvil no podemos gestionar el usuario “bron” y “bron1” de forma separada, únicamente se pueden gestionar a la vez, ambos cerrados, ambos abiertos, no es como un segundo “servicio” en el terminal. Si queremos hacer que sean servicios separados, se deben utilizar cuentas diferentes. Según nos ha comentado Chema Alonso, en próximas versiones sí se permitirá este uso (perfecto para el usuario administrador y un usuario sin privilegios que se usa habitualmente).

Cómo dar de baja un usuario en Latch

Para dar de baja a un usuario pareado con Latch, basta con irnos a la carpeta python y ejecutar la siguiente orden:

sudo python unpair.py

openvpn_unpaired

De forma automática se despareará el usuario y será notificado a través del terminal móvil que se ha dado de baja el servicio.

latch_openvpn_unpair

Cómo desinstalar Latch OpenVPN del sistema

Para desinstalar Latch del sistema basta con irnos a la carpeta python y ejecutar la siguiente orden:

sudo python uninstall.py

openvpn_uninstall

Y a continuación deberemos reiniciar el servicio OpenVPN:

sudo /etc/init.d/openvpn restart

Hasta aquí hemos llegado con el manual de configuración de Latch, esperamos que os haya servido de utilidad.

Os recomendamos acceder a la sección Latch donde encontraréis todos los manuales para sacar el máximo partido a esta fantástica herramienta.

Publicado por Sergio De Luz el 09 Mayo 2014 , actualizado el 06 Noviembre 2014

  • cyberalejo17

    Excelente, muchas gracias!

Últimos análisis

Valoración RZ
10
Valoración RZ
7
Valoración RZ
9
Valoración RZ
10
Valoración RZ
8
Valoración RZ
10
Valoración RZ
9
Valoración RZ
9
Valoración RZ
10