SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
LATCH en Linux
(Ubuntu)
LATCH, el pestillo digital
Bilal Jebari
www.bilaljebari.tk
BILAL JEBARI | www.bilaljebari.tk Página 2 de 2
Índice
Introducción .................................................................................................................................. 3
¿Qué es Latch? .............................................................................................................................. 4
Consideraciones Previas................................................................................................................ 5
Desarrollo...................................................................................................................................... 6
BILAL JEBARI | www.bilaljebari.tk Página 3 de 3
Introduccion
Este tutorial ha sido redactado con el objetivo de ayudar a otras personas a implementar el
sistema Latch en el sistema Operativo Linux, concretamente en Ubuntu.
Se trata de poner un segundo factor de autenticación para iniciar nuestra sesión de usuario en
Ubuntu.
En Internet hay muchos tutoriales, incluso mejores que este. He creído que puede servir de
gran ayuda a personas que no tengan grandes conocimientos y que quieran cacharrear y
aprender cosas nuevas e interesantes que sirven para proteger nuestra identidad digital.
El sistema Latch tiene muchas funcionalidades, algunas son muy extensas y complejas, por eso
he decidido no incluirla en este documento hasta más adelante.
Recuerda en INTERNET nada ni nadie está protegido.
NOTA: Queda terminantemente prohibido la manipulación y/o distribución de este tutorial sin
el consentimiento escrito del autor.
BILAL JEBARI | www.bilaljebari.tk Página 4 de 4
¿Que es Latch?
Latch es un sistema que permite proteger el acceso a nuestras identidades
digitales ofreciendo una capa adicional de seguridad. Latch permite controlar el acceso a una
cuenta desde nuestros Smartphone. Podemos tener el acceso bloqueado a un determinado
servicio a través del terminal, y si intentamos iniciar sesión con el “pestillo” cerrado, aunque
introduzcamos correctamente la contraseña, no podremos entrar en la cuenta y nos avisará de
que han intentado iniciar sesión.
De esta forma, si un pirata informático se hace con nuestros credenciales, no podrá iniciar
sesión si tenemos el Latch denegando las conexiones. Los usuarios podrán vincular sus
cuentas de bancos, redes sociales, servidores SSH, servidores OpenVPN entre otros servicios
de forma fácil y rápida, a la hora de utilizarlos deberemos permitir la conexión a través de
nuestro smartphone.
El funcionamiento es similar a una autenticación en dos pasos, para iniciar sesión debemos
introducir algo que sabemos (usuario y contraseña) y también usar algo que tenemos (nuestro
smartphone con Latch), de hecho Latch permite la generación de un One Time Password
(OTP) para que además de introducir nuestros credenciales habituales, tengamos que
introducir la clave de un sólo uso que se ha generado específicamente por la aplicación. De
esta forma si alguien intenta acceder al servicio cuando el Latch esté abierto, le pida una clave
que él no tiene. Como característica adicional, es posible programar por intervalos de tiempo
el bloqueo automático de un servicio, perfecto mientras estamos durmiendo, y también ver en
detalle las estadísticas de usuarios o intentos de acceso desde el panel de control de
desarrollador.
En el siguiente esquema podéis ver cómo funciona Latch de forma muy simplificada.
BILAL JEBARI | www.bilaljebari.tk Página 5 de 5
Consideraciones Previas
En este tutorial voy a usar una Servidor que preparé en su día para la asignatura de
Servicios en Red. Se trata de una máquina virtual con Ubuntu 10.04 Desktop.
BILAL JEBARI | www.bilaljebari.tk Página 6 de 6
Desarrollo
Para instalar el sistema Latch es necesario usar gcc y make, además es necesario
actualizar varias: libpam0g-dev - libcurl4-openssl-dev - libssl-dev.
Es recomendable hacer el procedimiento como usuario “root”, pero en caso de que queramos
proteger nuestro usuario “normal” bastaría con ejecutar las órdenes como su, “sudo su”.
Las operaciones que voy a hacer a continuación, las haré como super usuario (sudo), aunque
como he comentado antes, en todas la ordenes he ido poniendo “sudo”, la costumbre ;)
En este caso voy a latchear mi usuario root, ya que tengo el servidor presta multitud de
servicios a usuarios clientes.
El siguiente paso es instalar el gcc y make
El siguiente paso es instalar las tres librerías necesarias para “Latchear” nuestra cuenta.
Con la orden siguiente podemos instalar las tres a la vez, o si lo prefieren pueden instalar uno
por uno.
sudo apt-get install libpam0g-dev libcurl4-openssl-dev libssl-dev
BILAL JEBARI | www.bilaljebari.tk Página 7 de 7
En este caso procedemos a instalar uno por uno y así asegurarme de su correcta instalación.
Lo más probable que el sistema os diga que no se han podido autenticar… lo instalamos de
todas formas.
Al instalar el siguiente paquete, nos volverá a saltar el mensaje de verificación. Le decimos que
sí.
Tercer paquete.
En versiones posteriores es muy probable que no salga en el mensaje de Error de
autenticación.
Una vez que hayamos instalado las tres librerías podemos usar la siguiente orden para verificar
su correcta instalación.
BILAL JEBARI | www.bilaljebari.tk Página 8 de 8
Una vez instaladas las tres librerías anteriores, procedemos a actualizar dichos paquetes. Para
actualizarlos usaremos la siguiente orden:
sudo apt-get update
sudo apt-get upgrade
BILAL JEBARI | www.bilaljebari.tk Página 9 de 9
Una vez que hayamos instalado el gcc, make, las librerías y actualizados los paquetes, el
siguiente paso es hacerse con la aplicación Latch.
Debemos crear una cuenta como Desarrolladores y bajarnos el archivo .zip.
Para ello vamos a la página oficial de Latch: https://latch.elevenpaths.com ó
http://goo.gl/sNYyO1
Nos desplazamos a “Área de Desarrolladores” y pinchamos en la pestaña “Registro como
Desarrolladores”, nos registramos como desarrolladores. En versión gratuita hay limites de
cuentas asociadas y “pareos”.
Después de activar nuestra cuenta, accedemos nuevamente y desplegamos la estaña
“Documentación y SDKs”  Plugins y SDKs y descargamos el archivo .zip necesario.
Aquí os dejo el enlace: http://goo.gl/Ck9bD8
Después de descargar el paquete, lo extraemos en un sitio donde no nos moleste o vaya a ser
borrado accidentalmente “lo típico, borrar sin querer”
BILAL JEBARI | www.bilaljebari.tk Página 10 de 10
En este caso lo he descomprimido en una carpeta llamada latch que está en mi directorio
personal, [home].
Nos situamos en el directorio de latch-plugin-unix-master
Instalamos el plugin de Latch con la siguiente orden:
./configure && make && sudo make install
En este momento se está llevando a cabo la instalación.
BILAL JEBARI | www.bilaljebari.tk Página 11 de 11
Después de la instalación se crea un archivo llamado pam_latch.so que se encuentra en la ruta
/usr/local/lib/. Este archivo tenemos que moverlo a nuestro directorio PAM de nuestro sistema
operativo. El directorio, generalmente se encuentra en la carpeta ../lib/security, aunque
puede varían dependiendo de la versión de Ubuntu.
"../lib/security/" "../lib64/security/" "../lib/[versión_del_sistema]/security/"
No vale copiar/pegar o cortar/pegar. Se debe hacer desde la consola de comandos. Sería así:
sudo mv /usr/local/lib/pam_latch.so /lib/security/
Podemos verificar que se ha movido correctamente listando los archivos que hay en ese
directorio usando la orden: ls /lib/security/
Ahora también debemos mover dos archivos binarios, el ( latch y latch-shell ) que se
encuentran en /usr/local/bin. Debemos moverlos al directorio bin y darles los permisos 4755.
En versión 15.04, los archivos que tenemos que mover son el “latch” y “latch-ssh-cmd”
BILAL JEBARI | www.bilaljebari.tk Página 12 de 12
Se trata de hacer esto:
Movemos los dos archivos
sudo mv /usr/local/bin/latch /usr/bin/
sudo mv /usr/local/bin/latch-shell /usr/bin/
Ahora les damos los permisos 4755 a ambos archivos.
sudo chmod 4755 /usr/bin/latch
sudo chmod 4755 /usr/bin/latch-shell
En Ubuntu 15.04 los archivos son; “latch” y “latch-ssh-cmd”
El permiso 4755, pertenece a SUID y se usa en los directorios y archivos ejecutables
adquiriendo permisos del propietario.
755= rwx r-x r-x → UGO
BILAL JEBARI | www.bilaljebari.tk Página 13 de 13
Después de estos pasos, ahora vamos a proteger nuestro Login con Latch. Debemso modificar
tres ficheros que hacen referencia al Login, que son: lightdm-autologin, lightdm y login ó
gdm-autologin, gdm y login. Estos archivos se encuentran en /etc/pam.d/
NOTA: ESTOS TRES FICHEROS CAMBIAN DE NOMBRE DEPENDIENDO DE LA INTERFAZ QUE
TENGAMOS, EN MI CASO ES GDM Y LIGHTGDM.
Lo que se hará es simplemente añadir la siguiente línea (ver más adelante) justo después del
módulo PAM de autenticación.
Pero antes de proceder a modificar estos ficheros es muy aconsejable hacer una copia de los
mismos.
sudo cp /etc/pam.d/gdm /etc/pam.d/gdm.old
sudo cp /etc/pam.d/gdm-autologin /etc/pam.d/gdm-autologin.old
sudo cp /etc/pam.d/login /etc/pam.d/gdm-autologin.old
La línea de texto que se debe poner hace referencia al módulo PAM, y es la siguiente:
auth required pam_latch.so config=/etc/latch/latch.conf accounts=/etc/latch/latch.accounts
NOTA: Como he comentado antes, la ubicación de los archivos puede cambiar debido a la
versión de Ubuntu.
En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts”
Los archivos los editamos con un editor de texto y aplicamos los cambios.
BILAL JEBARI | www.bilaljebari.tk Página 14 de 14
En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts”
En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts”
En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts”
Bien ya tenemos una gran parte configurada, ahora tenemos que ir nuestra Área de
Desarrolladores de Latch y añadir una aplicación,
BILAL JEBARI | www.bilaljebari.tk Página 15 de 15
Ponemos un nombre a la aplicación y hacemos clic en Añadir la aplicación.
Después se nos facilita un ID de Aplicación y la clave Secret. Estos dos datos son necesarios
para configurar el archivo latch.conf
Guardamos los cambios
BILAL JEBARI | www.bilaljebari.tk Página 16 de 16
Después de obtener el ID y Secret Key, tenemos que agregarlos al fichero de latch.conf que se
encuentra en /etc/latch.conf
En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf”
BILAL JEBARI | www.bilaljebari.tk Página 17 de 17
El siguiente paso es instalar la aplicación Latch en Móvil para parear “Latchear” nuestro
Servidor con Latch.
La aplicación está disponible para Android, iOS y Windows Phone.
Aplicación en AppStore Accedemos con nuestra cuenta
Ya estamos “logeados” Ahora debemos generar un nuevo código que
es el que vamos a poner en la orden (más
adelante) para parear nuestro sistema.
BILAL JEBARI | www.bilaljebari.tk Página 18 de 18
Para parear nuestro cuenta en el Servidor con Latch usaremos la orden latch –p
“código_pareado” NOTA: SIN COMILLAS
Podemos parear tantos usuario como queramos, simplemente tenemos que estar logueados
con dicho usuario. En este caso lo he hecho con usuario “root”. Y en la imagen más abajo con
el usuario servidorbilal
Este es el código que me ha facilitado la
aplicación y se debe poner en la orden tal y
como se muestra en la imagen más abajo.
Después de introducir la orden de la
imagen de abajo, aparece un mensaje en
nuestro móvil de que se ha pareado con
éxito
Aquí podemos ver la orden y el resultado de pareado con éxito
BILAL JEBARI | www.bilaljebari.tk Página 19 de 19
Seguimos el mismo paso anterior (pareado) para añadir otra cuenta de usuario (servidorbilal).
Aquí podemos ver la orden y el resultado de pareado con éxito de la cuenta de servidorbilal
Para desparear la cuenta usaremos la orden latch -u
Para desparear la cuenta recordar que tenemos que estar logueados en la cuenta que
queremos desparear. En este caso la de servidorbilal
BILAL JEBARI | www.bilaljebari.tk Página 20 de 20
Desde el menú de configuración de la aplicación Latch, podemos hacer varias configuraciones,
como programación de bloqueo, desbloqueo, programación de bloqueo de acceso,
notificación de acceso autorizado, etc.
Para probar que hemos configurado e instalado todo correctamente procedemos a bloquear el
acceso a nuestro usuario desde la aplicación Latch.
Ahora mismo el acceso está bloqueado.
Escribimos la contraseña de forma correcta e intentamos acceder. Al haber bloqueado el
acceso, en el móvil nos salta un mensaje avisándonos de que alguien está intentando acceder
a nuestro servidor con ese usuario
BILAL JEBARI | www.bilaljebari.tk Página 21 de 21
Ahora cambiamos la configuración desde el móvil, configurándolo de tal manera que se nos
notifique cuando se acceda al Servidor.
Se hace marcando el check de “Notificar el acceso a servicios desbloqueados” desde el panel
de configuración de Latch
BILAL JEBARI | www.bilaljebari.tk Página 22 de 22
Al acceder, nos aparece en el móvil el mensaje que se muestra en la siguiente ilustración.
Preguntándonos si efectivamente somos nosotros los que hemos accedido al Servidor con esa
cuenta.
¡Et voilá! Ya está implementado el sistema Latch.
Autor: Bilal Jebari
Bibliografía: http://goo.gl/G0WrkJ
Imágenes: - Bilal Jebari
- El gigante buscador (no hace falta dar publicidad gratuita)
http://www.bilaljebari.tk
http://www.bilaljebari.blogspot.com.es

Contenu connexe

Tendances

Repositorio de datos
Repositorio de datosRepositorio de datos
Repositorio de datos
YOSMAR0508
 
Linux ud13 - iniciar sesion en linux de forma remota
Linux   ud13 - iniciar sesion en linux de forma remotaLinux   ud13 - iniciar sesion en linux de forma remota
Linux ud13 - iniciar sesion en linux de forma remota
Javier Muñoz
 
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPSAcceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Terrafx9
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
Andrés Amaya
 
Linux ud16 - usuarios de dominio de samba
Linux   ud16 - usuarios de dominio de sambaLinux   ud16 - usuarios de dominio de samba
Linux ud16 - usuarios de dominio de samba
Javier Muñoz
 

Tendances (13)

Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...
Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...
Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...
 
Repositorio de datos
Repositorio de datosRepositorio de datos
Repositorio de datos
 
Jenifer
JeniferJenifer
Jenifer
 
Linux ud13 - iniciar sesion en linux de forma remota
Linux   ud13 - iniciar sesion en linux de forma remotaLinux   ud13 - iniciar sesion en linux de forma remota
Linux ud13 - iniciar sesion en linux de forma remota
 
Instalación de un servicio de proxy, Squid
Instalación de un servicio de proxy, SquidInstalación de un servicio de proxy, Squid
Instalación de un servicio de proxy, Squid
 
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPSAcceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
 
Apache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows ServerApache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows Server
 
Julissa
JulissaJulissa
Julissa
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
Linux ud16 - usuarios de dominio de samba
Linux   ud16 - usuarios de dominio de sambaLinux   ud16 - usuarios de dominio de samba
Linux ud16 - usuarios de dominio de samba
 
Práctica apache2 jose antonio albalat almenara
Práctica apache2 jose antonio albalat almenaraPráctica apache2 jose antonio albalat almenara
Práctica apache2 jose antonio albalat almenara
 
php
phpphp
php
 
Cómo explotar EternalRomance & EternalSynergy en Windows Server 2016
Cómo explotar EternalRomance & EternalSynergy en Windows Server 2016Cómo explotar EternalRomance & EternalSynergy en Windows Server 2016
Cómo explotar EternalRomance & EternalSynergy en Windows Server 2016
 

Similaire à Latch, el pestillo digital

Manual de hacking basico por taskkill#3
Manual de hacking basico por taskkill#3Manual de hacking basico por taskkill#3
Manual de hacking basico por taskkill#3
Brat Stell
 
Php01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linuxPhp01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linux
Julio Pari
 
Consejos para utilización de ubuntu leonardo jiménez
Consejos para utilización de ubuntu leonardo jiménezConsejos para utilización de ubuntu leonardo jiménez
Consejos para utilización de ubuntu leonardo jiménez
leojt2011
 
Hacking a i os ipad iphone
Hacking a i os ipad iphoneHacking a i os ipad iphone
Hacking a i os ipad iphone
Rafael Pineda
 

Similaire à Latch, el pestillo digital (20)

Latch en Linux (Ubuntu): El cerrojo digital
Latch en Linux (Ubuntu): El cerrojo digitalLatch en Linux (Ubuntu): El cerrojo digital
Latch en Linux (Ubuntu): El cerrojo digital
 
Manual de hacking basico por taskkill#3
Manual de hacking basico por taskkill#3Manual de hacking basico por taskkill#3
Manual de hacking basico por taskkill#3
 
Instalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuraciónInstalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuración
 
Linux operaciones básicas
Linux operaciones básicasLinux operaciones básicas
Linux operaciones básicas
 
Linux
LinuxLinux
Linux
 
Instalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSHInstalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSH
 
Ubuntu
UbuntuUbuntu
Ubuntu
 
J perez jcaballero_documentacion_sshwindows
J perez jcaballero_documentacion_sshwindowsJ perez jcaballero_documentacion_sshwindows
J perez jcaballero_documentacion_sshwindows
 
Manual para-instalar-oracle-database-11 g-r2-en-centos-6
Manual para-instalar-oracle-database-11 g-r2-en-centos-6Manual para-instalar-oracle-database-11 g-r2-en-centos-6
Manual para-instalar-oracle-database-11 g-r2-en-centos-6
 
Php01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linuxPhp01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linux
 
Corcuera pablo gestorincidenciasocs
Corcuera pablo gestorincidenciasocsCorcuera pablo gestorincidenciasocs
Corcuera pablo gestorincidenciasocs
 
Sallis Usb Hacks
Sallis Usb HacksSallis Usb Hacks
Sallis Usb Hacks
 
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
 
Consejos para utilización de ubuntu leonardo jiménez
Consejos para utilización de ubuntu leonardo jiménezConsejos para utilización de ubuntu leonardo jiménez
Consejos para utilización de ubuntu leonardo jiménez
 
Debian hackers elementals
Debian hackers elementalsDebian hackers elementals
Debian hackers elementals
 
Cuckoosandbox
CuckoosandboxCuckoosandbox
Cuckoosandbox
 
CACTI herramienta de monitoreo
CACTI herramienta de monitoreoCACTI herramienta de monitoreo
CACTI herramienta de monitoreo
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandbox
 
Documentación ubuntu cloud
Documentación ubuntu cloudDocumentación ubuntu cloud
Documentación ubuntu cloud
 
Hacking a i os ipad iphone
Hacking a i os ipad iphoneHacking a i os ipad iphone
Hacking a i os ipad iphone
 

Latch, el pestillo digital

  • 1. LATCH en Linux (Ubuntu) LATCH, el pestillo digital Bilal Jebari www.bilaljebari.tk
  • 2. BILAL JEBARI | www.bilaljebari.tk Página 2 de 2 Índice Introducción .................................................................................................................................. 3 ¿Qué es Latch? .............................................................................................................................. 4 Consideraciones Previas................................................................................................................ 5 Desarrollo...................................................................................................................................... 6
  • 3. BILAL JEBARI | www.bilaljebari.tk Página 3 de 3 Introduccion Este tutorial ha sido redactado con el objetivo de ayudar a otras personas a implementar el sistema Latch en el sistema Operativo Linux, concretamente en Ubuntu. Se trata de poner un segundo factor de autenticación para iniciar nuestra sesión de usuario en Ubuntu. En Internet hay muchos tutoriales, incluso mejores que este. He creído que puede servir de gran ayuda a personas que no tengan grandes conocimientos y que quieran cacharrear y aprender cosas nuevas e interesantes que sirven para proteger nuestra identidad digital. El sistema Latch tiene muchas funcionalidades, algunas son muy extensas y complejas, por eso he decidido no incluirla en este documento hasta más adelante. Recuerda en INTERNET nada ni nadie está protegido. NOTA: Queda terminantemente prohibido la manipulación y/o distribución de este tutorial sin el consentimiento escrito del autor.
  • 4. BILAL JEBARI | www.bilaljebari.tk Página 4 de 4 ¿Que es Latch? Latch es un sistema que permite proteger el acceso a nuestras identidades digitales ofreciendo una capa adicional de seguridad. Latch permite controlar el acceso a una cuenta desde nuestros Smartphone. Podemos tener el acceso bloqueado a un determinado servicio a través del terminal, y si intentamos iniciar sesión con el “pestillo” cerrado, aunque introduzcamos correctamente la contraseña, no podremos entrar en la cuenta y nos avisará de que han intentado iniciar sesión. De esta forma, si un pirata informático se hace con nuestros credenciales, no podrá iniciar sesión si tenemos el Latch denegando las conexiones. Los usuarios podrán vincular sus cuentas de bancos, redes sociales, servidores SSH, servidores OpenVPN entre otros servicios de forma fácil y rápida, a la hora de utilizarlos deberemos permitir la conexión a través de nuestro smartphone. El funcionamiento es similar a una autenticación en dos pasos, para iniciar sesión debemos introducir algo que sabemos (usuario y contraseña) y también usar algo que tenemos (nuestro smartphone con Latch), de hecho Latch permite la generación de un One Time Password (OTP) para que además de introducir nuestros credenciales habituales, tengamos que introducir la clave de un sólo uso que se ha generado específicamente por la aplicación. De esta forma si alguien intenta acceder al servicio cuando el Latch esté abierto, le pida una clave que él no tiene. Como característica adicional, es posible programar por intervalos de tiempo el bloqueo automático de un servicio, perfecto mientras estamos durmiendo, y también ver en detalle las estadísticas de usuarios o intentos de acceso desde el panel de control de desarrollador. En el siguiente esquema podéis ver cómo funciona Latch de forma muy simplificada.
  • 5. BILAL JEBARI | www.bilaljebari.tk Página 5 de 5 Consideraciones Previas En este tutorial voy a usar una Servidor que preparé en su día para la asignatura de Servicios en Red. Se trata de una máquina virtual con Ubuntu 10.04 Desktop.
  • 6. BILAL JEBARI | www.bilaljebari.tk Página 6 de 6 Desarrollo Para instalar el sistema Latch es necesario usar gcc y make, además es necesario actualizar varias: libpam0g-dev - libcurl4-openssl-dev - libssl-dev. Es recomendable hacer el procedimiento como usuario “root”, pero en caso de que queramos proteger nuestro usuario “normal” bastaría con ejecutar las órdenes como su, “sudo su”. Las operaciones que voy a hacer a continuación, las haré como super usuario (sudo), aunque como he comentado antes, en todas la ordenes he ido poniendo “sudo”, la costumbre ;) En este caso voy a latchear mi usuario root, ya que tengo el servidor presta multitud de servicios a usuarios clientes. El siguiente paso es instalar el gcc y make El siguiente paso es instalar las tres librerías necesarias para “Latchear” nuestra cuenta. Con la orden siguiente podemos instalar las tres a la vez, o si lo prefieren pueden instalar uno por uno. sudo apt-get install libpam0g-dev libcurl4-openssl-dev libssl-dev
  • 7. BILAL JEBARI | www.bilaljebari.tk Página 7 de 7 En este caso procedemos a instalar uno por uno y así asegurarme de su correcta instalación. Lo más probable que el sistema os diga que no se han podido autenticar… lo instalamos de todas formas. Al instalar el siguiente paquete, nos volverá a saltar el mensaje de verificación. Le decimos que sí. Tercer paquete. En versiones posteriores es muy probable que no salga en el mensaje de Error de autenticación. Una vez que hayamos instalado las tres librerías podemos usar la siguiente orden para verificar su correcta instalación.
  • 8. BILAL JEBARI | www.bilaljebari.tk Página 8 de 8 Una vez instaladas las tres librerías anteriores, procedemos a actualizar dichos paquetes. Para actualizarlos usaremos la siguiente orden: sudo apt-get update sudo apt-get upgrade
  • 9. BILAL JEBARI | www.bilaljebari.tk Página 9 de 9 Una vez que hayamos instalado el gcc, make, las librerías y actualizados los paquetes, el siguiente paso es hacerse con la aplicación Latch. Debemos crear una cuenta como Desarrolladores y bajarnos el archivo .zip. Para ello vamos a la página oficial de Latch: https://latch.elevenpaths.com ó http://goo.gl/sNYyO1 Nos desplazamos a “Área de Desarrolladores” y pinchamos en la pestaña “Registro como Desarrolladores”, nos registramos como desarrolladores. En versión gratuita hay limites de cuentas asociadas y “pareos”. Después de activar nuestra cuenta, accedemos nuevamente y desplegamos la estaña “Documentación y SDKs”  Plugins y SDKs y descargamos el archivo .zip necesario. Aquí os dejo el enlace: http://goo.gl/Ck9bD8 Después de descargar el paquete, lo extraemos en un sitio donde no nos moleste o vaya a ser borrado accidentalmente “lo típico, borrar sin querer”
  • 10. BILAL JEBARI | www.bilaljebari.tk Página 10 de 10 En este caso lo he descomprimido en una carpeta llamada latch que está en mi directorio personal, [home]. Nos situamos en el directorio de latch-plugin-unix-master Instalamos el plugin de Latch con la siguiente orden: ./configure && make && sudo make install En este momento se está llevando a cabo la instalación.
  • 11. BILAL JEBARI | www.bilaljebari.tk Página 11 de 11 Después de la instalación se crea un archivo llamado pam_latch.so que se encuentra en la ruta /usr/local/lib/. Este archivo tenemos que moverlo a nuestro directorio PAM de nuestro sistema operativo. El directorio, generalmente se encuentra en la carpeta ../lib/security, aunque puede varían dependiendo de la versión de Ubuntu. "../lib/security/" "../lib64/security/" "../lib/[versión_del_sistema]/security/" No vale copiar/pegar o cortar/pegar. Se debe hacer desde la consola de comandos. Sería así: sudo mv /usr/local/lib/pam_latch.so /lib/security/ Podemos verificar que se ha movido correctamente listando los archivos que hay en ese directorio usando la orden: ls /lib/security/ Ahora también debemos mover dos archivos binarios, el ( latch y latch-shell ) que se encuentran en /usr/local/bin. Debemos moverlos al directorio bin y darles los permisos 4755. En versión 15.04, los archivos que tenemos que mover son el “latch” y “latch-ssh-cmd”
  • 12. BILAL JEBARI | www.bilaljebari.tk Página 12 de 12 Se trata de hacer esto: Movemos los dos archivos sudo mv /usr/local/bin/latch /usr/bin/ sudo mv /usr/local/bin/latch-shell /usr/bin/ Ahora les damos los permisos 4755 a ambos archivos. sudo chmod 4755 /usr/bin/latch sudo chmod 4755 /usr/bin/latch-shell En Ubuntu 15.04 los archivos son; “latch” y “latch-ssh-cmd” El permiso 4755, pertenece a SUID y se usa en los directorios y archivos ejecutables adquiriendo permisos del propietario. 755= rwx r-x r-x → UGO
  • 13. BILAL JEBARI | www.bilaljebari.tk Página 13 de 13 Después de estos pasos, ahora vamos a proteger nuestro Login con Latch. Debemso modificar tres ficheros que hacen referencia al Login, que son: lightdm-autologin, lightdm y login ó gdm-autologin, gdm y login. Estos archivos se encuentran en /etc/pam.d/ NOTA: ESTOS TRES FICHEROS CAMBIAN DE NOMBRE DEPENDIENDO DE LA INTERFAZ QUE TENGAMOS, EN MI CASO ES GDM Y LIGHTGDM. Lo que se hará es simplemente añadir la siguiente línea (ver más adelante) justo después del módulo PAM de autenticación. Pero antes de proceder a modificar estos ficheros es muy aconsejable hacer una copia de los mismos. sudo cp /etc/pam.d/gdm /etc/pam.d/gdm.old sudo cp /etc/pam.d/gdm-autologin /etc/pam.d/gdm-autologin.old sudo cp /etc/pam.d/login /etc/pam.d/gdm-autologin.old La línea de texto que se debe poner hace referencia al módulo PAM, y es la siguiente: auth required pam_latch.so config=/etc/latch/latch.conf accounts=/etc/latch/latch.accounts NOTA: Como he comentado antes, la ubicación de los archivos puede cambiar debido a la versión de Ubuntu. En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts” Los archivos los editamos con un editor de texto y aplicamos los cambios.
  • 14. BILAL JEBARI | www.bilaljebari.tk Página 14 de 14 En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts” En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts” En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf” y “usr/local/etc/latch/latch.accounts” Bien ya tenemos una gran parte configurada, ahora tenemos que ir nuestra Área de Desarrolladores de Latch y añadir una aplicación,
  • 15. BILAL JEBARI | www.bilaljebari.tk Página 15 de 15 Ponemos un nombre a la aplicación y hacemos clic en Añadir la aplicación. Después se nos facilita un ID de Aplicación y la clave Secret. Estos dos datos son necesarios para configurar el archivo latch.conf Guardamos los cambios
  • 16. BILAL JEBARI | www.bilaljebari.tk Página 16 de 16 Después de obtener el ID y Secret Key, tenemos que agregarlos al fichero de latch.conf que se encuentra en /etc/latch.conf En Ubuntu 15.04 es: “usr/local/etc/latch/latch.conf”
  • 17. BILAL JEBARI | www.bilaljebari.tk Página 17 de 17 El siguiente paso es instalar la aplicación Latch en Móvil para parear “Latchear” nuestro Servidor con Latch. La aplicación está disponible para Android, iOS y Windows Phone. Aplicación en AppStore Accedemos con nuestra cuenta Ya estamos “logeados” Ahora debemos generar un nuevo código que es el que vamos a poner en la orden (más adelante) para parear nuestro sistema.
  • 18. BILAL JEBARI | www.bilaljebari.tk Página 18 de 18 Para parear nuestro cuenta en el Servidor con Latch usaremos la orden latch –p “código_pareado” NOTA: SIN COMILLAS Podemos parear tantos usuario como queramos, simplemente tenemos que estar logueados con dicho usuario. En este caso lo he hecho con usuario “root”. Y en la imagen más abajo con el usuario servidorbilal Este es el código que me ha facilitado la aplicación y se debe poner en la orden tal y como se muestra en la imagen más abajo. Después de introducir la orden de la imagen de abajo, aparece un mensaje en nuestro móvil de que se ha pareado con éxito Aquí podemos ver la orden y el resultado de pareado con éxito
  • 19. BILAL JEBARI | www.bilaljebari.tk Página 19 de 19 Seguimos el mismo paso anterior (pareado) para añadir otra cuenta de usuario (servidorbilal). Aquí podemos ver la orden y el resultado de pareado con éxito de la cuenta de servidorbilal Para desparear la cuenta usaremos la orden latch -u Para desparear la cuenta recordar que tenemos que estar logueados en la cuenta que queremos desparear. En este caso la de servidorbilal
  • 20. BILAL JEBARI | www.bilaljebari.tk Página 20 de 20 Desde el menú de configuración de la aplicación Latch, podemos hacer varias configuraciones, como programación de bloqueo, desbloqueo, programación de bloqueo de acceso, notificación de acceso autorizado, etc. Para probar que hemos configurado e instalado todo correctamente procedemos a bloquear el acceso a nuestro usuario desde la aplicación Latch. Ahora mismo el acceso está bloqueado. Escribimos la contraseña de forma correcta e intentamos acceder. Al haber bloqueado el acceso, en el móvil nos salta un mensaje avisándonos de que alguien está intentando acceder a nuestro servidor con ese usuario
  • 21. BILAL JEBARI | www.bilaljebari.tk Página 21 de 21 Ahora cambiamos la configuración desde el móvil, configurándolo de tal manera que se nos notifique cuando se acceda al Servidor. Se hace marcando el check de “Notificar el acceso a servicios desbloqueados” desde el panel de configuración de Latch
  • 22. BILAL JEBARI | www.bilaljebari.tk Página 22 de 22 Al acceder, nos aparece en el móvil el mensaje que se muestra en la siguiente ilustración. Preguntándonos si efectivamente somos nosotros los que hemos accedido al Servidor con esa cuenta. ¡Et voilá! Ya está implementado el sistema Latch. Autor: Bilal Jebari Bibliografía: http://goo.gl/G0WrkJ Imágenes: - Bilal Jebari - El gigante buscador (no hace falta dar publicidad gratuita) http://www.bilaljebari.tk http://www.bilaljebari.blogspot.com.es