Autenticación de Dos Factores en Linux para Iniciar Sesión
Autenticación de Dos Factores en Linux para Iniciar Sesión

Autenticación de Dos Factores en Linux para Iniciar Sesión

Aprende cómo habilitar la autenticación de dos factores en Linux para iniciar sesión utilizando Google Authenticator en tu PC/laptop y en tu smartphone.

Tener una contraseña segura y una buena política de sudoers es excelente, pero no es infalible, y algunas veces no es suficiente para protegerte. Es por eso que muchos en el campo de la seguridad han recurrido al uso de la autenticación de dos factores en Linux.

En este artículo, veremos cómo habilitar la autenticación de dos factores en Linux utilizando Google Authenticator.

1. Instalación de Google Authenticator

Usar Google Authenticator es posible, gracias a un plugin de pam. Use este complemento con GDM (y otros administradores de escritorio que lo admitan). Aquí le mostramos cómo instalarlo en su PC con Linux.

Nota

Antes de configurar este complemento en su PC con Linux, vaya a Google Play Store (o) Apple App Store y descargue Google Authenticator, ya que es una parte clave de este tutorial.

1.1. Google Authenticator en Linux

  • Para sistemas basados en Ubuntu
sudo apt install libpam-google-authenticator
Instalar Google Authenticator en Linux
Instalar Google Authenticator en Linux
  • Para sistemas basados en Debian
sudo apt-get install libpam-google-authenticator
  • Arch Linux

Arch Linux no es compatible con el módulo de autenticación de Google pam de forma predeterminada. Los usuarios necesitarán agarrar y compilar el módulo a través de un paquete AUR. Descargue la última versión del PKGBUILD o diríjalo a su ayudante AUR favorita para que funcione.

  • Fedora
sudo dnf install google-authenticator
  • OpenSUSE
sudo zypper install google-authenticator-libpam

Otros Linux

El código fuente para la versión Linux de Google Authenticator, así como el plugin libpam utilizado en esta guía, está disponible en Github. Si está utilizando una distribución de Linux no tradicional, dirígete aquí y sigue las instrucciones de la página. Las instrucciones pueden ayudarte a compilarlo desde la fuente.

https://github.com/google/google-authenticator-libpam

2. Configurar Google Authenticator en Linux

Un archivo de configuración necesita edición antes de que pam funcione con el complemento de Autenticación de Google (Google Authenticator). Para modificar este archivo de configuración, abra una ventana de terminal. Dentro de la terminal y ejecute:

sudo nano /etc/pam.d/common-auth

Dentro del archivo common-auth, hay mucho que mirar. Muchos comentarios y notas sobre cómo el sistema debe usar la configuración de autenticación entre servicios en Linux. Ignore todo esto en el archivo y desplácese hasta “# here are the per-package modules (the “Primary” block)“. Mueva el cursor debajo de él con la tecla de flecha hacia abajo (↓), y presione la tecla Intro para hacer una nueva línea. Entonces escribe esto:

auth required pam_google_authenticator.so
Google Authenticator common-auth
Modificación del archivo common-auth

Después de escribir esta nueva línea, presione CTRL + O para guardar la edición. A continuación, presione CTRL + X para salir de Nano.

A continuación, regrese a la terminal y escriba “google-authenticator“. Luego se te pedirá que respondas algunas preguntas.

google-authenticator Terminal Linux
“google-authenticator” en la terminal

La primera pregunta que hace Google Authenticator es “Do you want authentication tokens to be time-based” (¿Desea que los tokens de autenticación se basen en el tiempo?). Responda “Sí” presionando “y” en el teclado.

Después de responder esta pregunta, la herramienta imprimirá una nueva clave secreta (secret key), junto con algunos códigos de emergencia. Guarde estos códigos, ya que es importante.

Continúa y responde las siguientes tres preguntas con “yes“, seguidas de “no” y “no“.

Tip de seguridad

La última pregunta que hace el autenticador tiene que ver con la limitación de velocidad. Esta configuración, cuando está habilitada, hace que Google Authenticator solo permita 3 intentos de prueba/fallo cada 30 segundos. Por razones de seguridad, le recomendamos que responda que sí a esto, pero está perfectamente bien de responder no, si la limitación de velocidad no es algo que le interese.

3. Configurando Google Authenticator en el smartphone

Del lado de Linux de las cosas está funcionando. Ahora es el momento de configurar la aplicación Google Authenticator para que funcione con la nueva configuración. Para comenzar, abra la aplicación y seleccione la opción “Enter a provide Key” (Ingresar una clave provista). Esto muestra un área de “enter account details” (ingresar detalles de la cuenta). *También puede hacerlo automáticamente con la opción “Scan a barcode”*

En esta área, hay dos cosas que completar: el nombre de la PC (el hostname) con la que está utilizando el autenticador, así como la clave secreta que anotó anteriormente. Complete ambos y Google Authenticator estará operativo.

4. Iniciar sesión en Linux con código de verificación

Ha configurado Google Authenticator en Linux, así como su dispositivo móvil y todo funciona en conjunto como debería. Para iniciar sesión, seleccione el usuario. Inmediatamente después de seleccionar al usuario, su sistema operativo le pedirá un código de autenticación. Abra su dispositivo móvil, vaya a Google Authenticator e ingrese el código que aparece en el administrador de inicio de sesión.

código de autenticación smartphone
código de autenticación linux

Si el código es exitoso, entonces podrá ingresar el código de acceso del usuario.

Nota

La configuración de Google Authenticator en Linux no solo afecta al administrador de inicio de sesión. En cambio, cada vez que un usuario intente obtener acceso de administrador, acceder a privilegios de sudo o hacer cualquier cosa que requiera una contraseña, se requiere un código de autenticación.

5. Conclusión

Tener la autenticación de dos factores conectada directamente al escritorio de Linux agrega una capa adicional de seguridad que debería estar allí por defecto. Con esto habilitado, es mucho más difícil obtener acceso al sistema de alguien.

Dos factores pueden ser dudosos a veces (como si fuera demasiado lento para el autenticador), pero en general es una adición bienvenida a cualquier administrador de escritorio de Linux. ¡No esperes para probarlo! 🙂

My Cart Close (×)

Tu carrito está vacío
Ver tienda