Latch en Linux (Ubuntu): El cerrojo digital

29.519 visualizaciones

Publicado el

Artículo de cómo fortifica Linux (Ubuntu) con Latch: El cerrojo digital. El paper ha sido escrito por Bilal Jebari http://www.bilaljebari.tk/index.php/es/blog/5-latch-en-ubuntu

Publicado en: Tecnología
2 comentarios
6 recomendaciones
Estadísticas
Notas
  • @Verónica Ovando Buenas. Soy Roberto Gómez (Helpdesk & Quality Assurance Engineer). Hemos instalado un Debian 8.3.0 sin entorno gráfico y latch ha funcionado correctamente. Es más las pruebas de funcionamiento las hemos realizado con el usuario root directamente, que como le indicamos ha podido bloquear tanto servicios como SSH, Sudo, Su y Login. Lo único que nos hemos dado cuenta es que en la carpeta de Examples, que es donde adjuntamos los ejemplos de archivos PAM de validación, los nombres que utiliza la nueva versión de Debian 8.3.0 para los ficheros PAM de login han cambiado, por lo que los existentes en el "Examples" no sirven. En lo que a las estadísticas se refiere, no sabemos si hace referencia a las estadísticas de la APP pareada o a las del developer que tiene en propiedad dicha APP. Rogamos en futuras ocasiones para poder darle un soporte más personalizado y directo contacte con nosotros a través de: latch-help@support.elevenpaths.com Saludos cordiales del equipo de ElevenPaths
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • Chema. Intente la integración en un debian standard, sin éxito. Use el mismo app_id y secret en un debian con entorno gráfico y funcionó. Podrías explicarme por qué ocurrió? No debería integrarse latch a pesar de no contar con entorno gráfico (tiene algo que ver)? Jugando con latch, intenté parear de nuevo el debian-standard y tuve un mensaje de que se había pareado, pero al contorlar en las estadísticas de las apps, el usuario no aparece (root).
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
Sin descargas
Visualizaciones
Visualizaciones totales
29.519
En SlideShare
0
De insertados
0
Número de insertados
11.822
Acciones
Compartido
0
Descargas
65
Comentarios
2
Recomendaciones
6
Insertados 0
No insertados

No hay notas en la diapositiva.

Latch en Linux (Ubuntu): El cerrojo digital

  1. 1. LATCH en Linux (Ubuntu) LATCH, EL CERROJO DIGITAL Bilal Jebari
  2. 2. Latch en Ubuntu Página 2 Bilal Jebari Índice Introducción.................................................................................................................................. 3 ¿Qué es Latch? .............................................................................................................................. 4 Consideraciones Previas................................................................................................................ 5 Desarrollo...................................................................................................................................... 6
  3. 3. Latch en Ubuntu Página 3 Bilal Jebari Introduccion Este pequeño, micro, mini tutorial he decido redactarlo para que pueda servir de ayuda a otras personas, ya que siempre la mejor forma de aprender es cacharreando. Se trata que poner un segundo factor de autenticación para iniciar nuestras cuentas en Linux (Ubuntu). En Internet hay muchos tutoriales, incluso pueden ser mejores que este, he creído que puedes servir de gran ayuda para personas que no tengas 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. NOTA: Queda terminantemente prohibida la manipulación y distribución de este tutorial sin el consentimiento previo del autor.
  4. 4. Latch en Ubuntu Página 4 Bilal Jebari ¿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 smartphones, 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. 5. Latch en Ubuntu Página 5 Bilal Jebari 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. 6. Latch en Ubuntu Página 6 Bilal Jebari Desarrollo Para instalar el sistema Latch es necesario usar gcc y make, además es necesarios actualizar varias librerías de Linux, que son las siguientes: libpam0g-dev libcurl4- openssl-dev libssl-dev. 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 ;) El siguiente paso es instalar el gcc y make “yo, ya los tengo instalados” El siguiente paso es instalar las tres librerías necesarias para “Latchear” nuestro sistema. 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. 7. Latch en Ubuntu Página 7 Bilal Jebari En mi caso he preferido 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. Una vez que hayamos instalado los tres podemos usar la siguiente orden y así verificar que se han instalado los tres correctamente. Es recomendable actualizar los paquetes. Para actualizarlos usaremos la siguiente orden: sudo apt-get update
  8. 8. Latch en Ubuntu Página 8 Bilal Jebari sudo apt-get upgrade
  9. 9. Latch en Ubuntu Página 9 Bilal Jebari 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: http://goo.gl/sNYyO1 Registro como Desarrolladores (hay una opción de suscripción Gratutita) Después de activar nuestra cuenta, accedemos nuevamente y vamos a documentación y SDKs  Plugins y SDKs y bajarnos el archivo .zip necesario. Aquí os dejo el enlace: http://goo.gl/Ck9bD8 Después de descargar el paquete lo extraemos y lo ubicamos en un sitio donde no nos moleste o vaya a ser borrado accidentalmente “lo típico, borrar sin querer”
  10. 10. Latch en Ubuntu Página 10 Bilal Jebari En este caso lo he descomprimido en una carpeta llamada latch que está en mi directorio personal. Nos situamos en el directorio de latch-plugin-unix-master Ejecutamos el plugin de la aplicación con la siguiente orden: ./configure && make && sudo make install Se está ejecutando la instalación
  11. 11. Latch en Ubuntu Página 11 Bilal Jebari Después de la instalación se crea un archivo llamado pam_latch.so que se encuentra en la ruta /usr/local/lib/ que tenemos que moverlo a nuestro directorio PAM de nuestro sistema operativo en mi caso es /lib/security NOTA: SI USAN OTRA VERSIÓN DEL SISTEMA PUEDE ESTAR EN: "/lib/security/" "/lib64/security/" "/lib/[versión_del_sistema]/security/" No vale con 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 con 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.
  12. 12. Latch en Ubuntu Página 12 Bilal Jebari 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 le damos los permisos 4755 a ambos archivos. sudo chmod /usr/bin/latch sudo chmod /usr/bin/latch-shell 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/ AVISO: ESTOS TRES FICHEROS CAMBIAN DE NOMBRE DEPENDIENDO DE LA INTERFAZ QUE USAIS, EN MI CASO ES GDM Y LIGHTGDM. Lo que se hará es simplemente añadir la siguiente línea 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.
  13. 13. Latch en Ubuntu Página 13 Bilal Jebari 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 se debe poner en el párrafo que 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 Los archivos los editamos con un editor de texto y aplicamos los cambios.
  14. 14. Latch en Ubuntu Página 14 Bilal Jebari Bien ya tenemos una gran parte configurada, ahora tenemos que ir nuestra Área de Desarrolladores de Latch y añadir una aplicación, Ponemos un nombre a la aplicación y hacemos clic en Añadir la aplicación.
  15. 15. Latch en Ubuntu Página 15 Bilal Jebari 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. 16. Latch en Ubuntu Página 16 Bilal Jebari Después de obtener el ID y Secret Key, tenemos que agregarlos al fichero de latch.conf que se encuentra en /etc/latch El siguiente paso es instalar la aplicación Latch en Móvil para parear nuestro Servidor con Latch. La aplicación está disponible para Android, iOS, Windows Phone.
  17. 17. Latch en Ubuntu Página 17 Bilal Jebari Aplicación en PlayStore Accedemos con nuestra cuenta Ya estamos “logeados” Ahora debemos generar un nuevo código que es el que vamos a poner en la orden para parear nuestro sistema.
  18. 18. Latch en Ubuntu Página 18 Bilal Jebari 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 y se debe poner en la orden, como se muestra en la imagen más abajo. Después de introducir la orden de la imagen de abajo, me 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. 19. Latch en Ubuntu Página 19 Bilal Jebari He seguido ll mismo paso anterior (pareado) para añadir la cuenta de 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. 20. Latch en Ubuntu Página 20 Bilal Jebari Dese la aplicación Latch que tenemos instalada en el móvil, podemos hacer varias configuraciones, como programación de bloqueo, notificación, 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. 21. Latch en Ubuntu Página 21 Bilal Jebari 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. 22. Latch en Ubuntu Página 22 Bilal Jebari Al acceder, este es el mensaje que nos sale en el móvil. Preguntándonos si efectivamente somos nosotros los que hemos accedido al Servidor con esa cuenta. ¡Et voilá! Ya está implementado el sistema Latch en nuestro servidor. Autor: Bilal Jebari Contacto: @bilal_jebari Bibliografía: http://goo.gl/G0WrkJ Imágenes: - Bilal Jebari - El gigante buscador (no hace falta dar publicidad gratuita) VISITA MI WEB: www.bilaljebari.tk

×