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 OpenSSH y mantener los accesos al sistema bajo control de forma permanente.
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 SSH 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 SSH 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 SSH con Latch.
Instalación de Latch para SSH en Ubuntu 14.04 LTS
Nosotros os vamos a enseñar cómo configurar Latch con OpenSSH en Ubuntu 14.04 LTS, lo primero que debemos hacer es instalar el típico gcc, make y por supuesto OpenSSH 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:
Es recomendable reiniciar el servicio SSH una vez que se ha instalado:
sudo /etc/init.d/ssh 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:
# Configuration file for the latch SSH plugin
# Identify your Application# Application ID value
app_id = SrLv8S6ONBjbOqI9EvQN
#Secret key value
secret_key = kr89S7DOI4qSzZ9NK4QWC0CXQdgxQ6HIXFrgwq2G
A continuación podéis ver una captura de pantalla de cómo quedaría editado:
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.
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.
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.
En el sistema tenemos que teclear por terminal la siguiente orden:
sudo pairSSH CODIGO -f RUTA ARCHIVO .CONF
En nuestro caso estamos en /python/ por lo que hemos introducido la siguiente orden:
sudo pairSSH 9qUcKN -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:
Y de forma instantánea y automática, en nuestro terminal móvil nos aparecerá algo como esto:
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:
En la aplicación móvil podremos bloquear y desbloquear el servicio cuando queramos, simplemente tenemos que arrastrar el candado del servicio a bloquear.
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:
Probando el funcionamiento de Latch con OpenSSH
Una vez que está todo instalado y configurado, vamos a simular ser un usuario malintencionado que quiere acceder a nuestro servidor SSH. Como somos muy celosos de nuestra seguridad, siempre tendremos el Latch cerrado a menos que vayamos a utilizar el servicio.
Si entramos vía SSH al sistema protegido con Latch e introducimos la contraseña, en el smartphone nos aparecerá el siguiente aviso:
Si no desbloqueamos el servicio no podremos conectarnos, por tanto procedemos a desbloquear el servicio y a intentar de nuevo la conexión. Como en el panel de control configuramos el OTP de forma obligatoria, siempre que intentemos iniciar sesión nos pedirá una contraseña de un solo uso, tal y como podéis ver en la siguiente imagen:
En el terminal del sistema Ubuntu podéis ver las órdenes que hemos introducido, el primer «Password:» corresponde al Latch cerrado, y el segundo «Password:» al Latch abierto, pero como tenemos un OTP, hasta que no introducimos la clave generada no nos dejará pasar:
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.
Configurar un segundo usuario para entrar vía SSH
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 pairSSH 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
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.
Cómo desinstalar Latch SSH del sistema
Para desinstalar Latch del sistema basta con irnos a la carpeta python y ejecutar la siguiente orden:
sudo python uninstall.py
Y a continuación deberemos reiniciar el servicio OpenSSH:
sudo /etc/init.d/ssh 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.