Cómo agregar seguridad MFA a través de su terminal Raspberry Pi

La Raspberry Pi es una popular computadora de placa única que se ha convertido en una moda en los últimos años. Debido a su creciente popularidad y uso común entre los codificadores novatos y entusiastas de la tecnología, se ha convertido en un objetivo para que los ciberdelincuentes hagan lo que más les gusta hacer: el robo cibernético. Al igual que con los dispositivos de PC normales que protegemos con numerosos firewalls y contraseñas, es cada vez más importante proteger su dispositivo Raspberry Pi con una protección similar de múltiples facetas.



Frambuesa pi

La autenticación multifactor funciona combinando dos o más de los siguientes para otorgarle acceso a su cuenta o dispositivo. Las tres categorías generales desde las que proporcionar acceso otorgando información son: algo que sabe, algo que tiene y algo que es. La primera categoría podría ser una contraseña o un código PIN que haya configurado para su cuenta o dispositivo. Como capa adicional de protección, es posible que deba proporcionar algo de la segunda categoría, como un pin generado por el sistema que se envía a su teléfono inteligente o se genera en otro dispositivo de su propiedad. Como tercera alternativa, también puede incorporar algo de la tercera categoría, que comprende claves físicas como la identificación biométrica que incluye reconocimiento facial, huella digital y escaneo de retina, dependiendo de la capacidad de su dispositivo para realizar estos escaneos.



Para el propósito de esta configuración, usaremos los dos modos de autenticación más comunes: su contraseña establecida y un token único generado a través de su teléfono inteligente. Integraremos ambos pasos con Google y recibiremos su contraseña a través de la aplicación de autenticación de Google (que reemplaza la necesidad de recibir códigos SMS en su teléfono celular).



Paso 1: obtenga la aplicación Google Authenticator

La aplicación Google Authenticator en Google Play Store.



Antes de comenzar a configurar su dispositivo, descarguemos e instalemos la aplicación de autenticación de Google en su teléfono inteligente. Dirígete a la tienda de aplicaciones de Apple, Google Play Store o la tienda respectiva del dispositivo que estés utilizando. Descargue la aplicación de autenticación de Google y espere a que termine de instalarse. También se pueden usar otras aplicaciones de autenticación, como el autenticador de Microsoft, pero para nuestro tutorial, usaremos la aplicación de autenticación de Google.

Paso 2: configurar sus conexiones SSH

Los dispositivos Raspberry Pi normalmente funcionan con SSH y también trabajaremos en la configuración de nuestra autenticación multifactor a través de SSH. Crearemos dos conexiones SSH para hacer esto por la siguiente razón: no queremos que se bloquee su dispositivo y, en caso de que quede bloqueado en una transmisión, la segunda le permitirá otra oportunidad de volver a ingresar Esto es solo una red de seguridad que estamos instalando por su bien: el usuario que posee el dispositivo. Mantendremos esta segunda transmisión de red de seguridad durante todo el proceso de configuración hasta que se complete toda la configuración y nos hayamos asegurado de que su autenticación multifactor funcione correctamente. Si lleva a cabo los siguientes pasos con detenimiento y cuidado, no debería haber ningún problema para configurar su autenticación.

La interfaz Raspberry Pi.



Inicie dos ventanas de terminal y escriba el siguiente comando en cada una. Esto es para configurar las dos corrientes en paralelo.

ssh username@piname.local

En lugar de nombre de usuario, escriba el nombre de usuario de su dispositivo. En lugar del nombre pi, escriba el nombre de su dispositivo pi.

Después de presionar Intro, debería recibir un mensaje de bienvenida en ambas ventanas de la terminal mostrando el nombre de su dispositivo y su nombre de usuario también.

A continuación, editaremos el archivo sshd_config. Para hacer esto, escriba el siguiente comando en cada ventana. Recuerde realizar todos los pasos de esta sección en ambas ventanas en paralelo.

sudo nano / etc / ssh / sshd_config

Desplácese hacia abajo y busque donde dice: ChallengeResponseAuthentication no

Cambie el 'no' por un 'sí' escribiendo esto en su lugar. Guarde sus cambios presionando [Ctrl] + [O] y luego salga de la ventana presionando [Ctrl] + [X]. Nuevamente, haga esto para ambas ventanas.

Reinicie las terminales y escriba el siguiente comando en cada una para reiniciar el demonio SSH:

sudo systemctl reiniciar ssh

Por último. Instale Google Authenticator en su configuración para integrar su sistema con él. Para hacer esto, escriba el siguiente comando:

sudo apt-get install libpam-google-authenticator

Sus transmisiones ahora se han configurado y ha configurado su autenticador de Google con su dispositivo y su teléfono inteligente hasta este momento.

Paso 3: integración de su autenticación multifactor con Google Authenticator

  1. Inicie su cuenta y escriba el siguiente comando: autenticador de google
  2. Ingrese 'Y' para tokens basados ​​en tiempo
  3. Estire la ventana para ver el código QR completo que se ha generado y escanéelo en el dispositivo de su teléfono inteligente. Esto le permitirá emparejar el servicio de autenticación de su Raspberry Pi con la aplicación de su teléfono inteligente.
  4. Se mostrarán algunos códigos de respaldo debajo del código QR. Anótelos o tome una foto de ellos para tenerlos en reserva en caso de que no pueda verificar su autenticación multifactor a través de la aplicación Google Authenticator y termine necesitando un código de respaldo para ingresar. Guárdelos a salvo y no lo haga perderlos.
  5. Se le pedirán cuatro preguntas ahora y aquí le explicamos cómo deberá responderlas ingresando 'Y' para sí o 'N' para no. (Nota: Las preguntas a continuación se citan directamente desde el terminal digital Raspberry Pi para que sepa exactamente a qué preguntas se enfrentará y cómo responderlas).

    La aplicación para teléfonos inteligentes Google Authenticator en iOS. Las cuentas se han bloqueado por razones de seguridad y los dígitos del código de seguridad también se han barajado y cambiado.

    • '¿Quieres que actualice tu archivo' /home/pi/.google_authenticator '?' (s / n): Enter “Y”
    • “¿Quiere no permitir múltiples usos del mismo token de autenticación? Esto te restringe a un inicio de sesión cada 30 segundos, pero aumenta tus posibilidades de notar o incluso prevenir ataques man-in-the-middle (sí / no): ' Enter “Y”
    • “De forma predeterminada, la aplicación móvil genera un nuevo token cada 30 segundos. Para compensar la posible desviación de tiempo entre el cliente y el servidor, permitimos un token adicional antes y después de la hora actual. Esto permite una desviación de tiempo de hasta 30 segundos entre el servidor de autenticación y el cliente. Si experimenta problemas con una sincronización de tiempo deficiente, puede aumentar la ventana de su tamaño predeterminado de 3 códigos permitidos (un código anterior, un código actual, el código siguiente) a 17 códigos permitidos (los 8 códigos anteriores, un código actual, el siguientes 8 códigos). Esto permitirá una desviación de tiempo de hasta 4 minutos entre el cliente y el servidor. ¿Quieres hacerlo? (s / n): ' Ingrese 'N'
    • 'Si la computadora en la que está iniciando sesión no está protegida contra los intentos de inicio de sesión por fuerza bruta, puede habilitar la limitación de velocidad para el módulo de autenticación. De forma predeterminada, esto limita a los atacantes a no más de 3 intentos de inicio de sesión cada 30 segundos. ¿Quieres habilitar la limitación de velocidad? (s / n): ' Enter “Y”
  6. Ahora, inicie la aplicación Google Authenticator en su teléfono inteligente y presione el icono más en la parte superior de la pantalla. Escanee el código QR que se muestra en su dispositivo Pi para emparejar los dos dispositivos. Ahora se le mostrarán los códigos de autenticación las 24 horas del día para cuando los necesite para iniciar sesión. No necesitará generar un código. Simplemente puede iniciar la aplicación y escribir la que se muestra en ese momento.

Paso 4: configurar el módulo de autenticación PAM con su SSH

Inicie su terminal y escriba el siguiente comando: sudo nano /etc/pam.d/sshd

Escriba el siguiente comando como se muestra:

# 2FA auth required pam_google_authenticator.so

Si desea que se le solicite su clave de acceso a través de la aplicación Google Authenticator antes de ingresar su contraseña, ingrese el siguiente comando antes del comando ingresado anteriormente:

@include common-auth

Si desea que se le solicite la contraseña después de haber ingresado su contraseña, escriba este mismo comando, excepto que lo coloque después del conjunto de comandos # 2FA anterior. Guarde sus cambios presionando [Ctrl] + [O] y luego salga de la ventana presionando [Ctrl] + [X].

Paso 5: cierre la secuencia SSH paralela

Ahora que ha terminado de configurar la autenticación multifactor, puede cerrar uno de los flujos paralelos que teníamos. Para hacer esto, escriba el siguiente comando:

sudo systemctl reiniciar ssh

Su segundo flujo de red de seguridad de respaldo aún se está ejecutando. Lo mantendrá en ejecución hasta que haya verificado que su autenticación multifactor funciona correctamente. Para hacer esto, inicie una nueva conexión SSH escribiendo:

ssh username@piname.local

En lugar de nombre de usuario, escriba el nombre de usuario de su dispositivo. En lugar del nombre pi, escriba el nombre de su dispositivo pi.

Ahora se llevará a cabo el procedimiento de inicio de sesión. Escriba su contraseña y luego ingrese el código que se muestra en su aplicación Google Authenticator en este momento. Tenga cuidado de completar ambos pasos en treinta segundos. Si puede iniciar sesión correctamente, puede regresar y repetir el paso anterior para cerrar el flujo de red de seguridad paralelo que teníamos funcionando. Si ha seguido todos los pasos correctamente, debería poder reanudar la autenticación multifactor en su dispositivo Raspberry Pi ahora.

Ultimas palabras

Al igual que con cualquier proceso de autenticación que implemente en cualquier dispositivo o cuenta, estos factores adicionales lo hacen más seguro que antes, pero no lo hacen absolutamente seguro. Tenga cuidado al usar su dispositivo. Esté alerta de posibles estafas, ataques de phishing y robos cibernéticos a los que su dispositivo podría estar sujeto. Proteja su segundo dispositivo en el que ha configurado el proceso de recuperación de código y manténgalo seguro también. Necesitará este dispositivo cada vez que vuelva a su sistema. Mantenga sus códigos de respaldo en un lugar conocido y seguro en caso de que alguna vez se encuentre en una posición en la que no tenga acceso al dispositivo de respaldo de su teléfono inteligente.