Two Factor Authentication Raspberry Pi Mfa

Cómo configurar la autenticación de dos factores para Raspberry Pi

SSH es una de las formas más populares de controlar su Raspberry Pi desde su computadora portátil o PC. Aquí aprenderá cómo configurar la autenticación de dos factores para su acceso SSH a Raspberry Pi y agregarle una capa adicional de seguridad.

Nota: Si está utilizando el archivo de clave SSH para acceder a su Raspberry Pi, la autenticación de dos factores no estará en uso.

Actualiza tu Pi

Suponiendo que ya configuró su Raspberry Pi con el sistema operativo Raspberry Pi, es mejor verificar primero que todo su software esté actualizado. Abra una terminal y escriba el siguiente comando:

sudo apt update && sudo apt -y upgrade

Habilitar SSH

Raspberry Pi OS tiene el servidor SSH desactivado de forma predeterminada. Antes de que pueda conectarse a su Pi a través de SSH, debe habilitarlo ejecutando los siguientes comandos de Terminal:

sudo systemctl enable ssh
sudo systemctl start ssh

Habilite SSH en su Raspberry Pi.

Ahora podrá conectarse al servidor SSH.

Requerir autenticación de identidad, con desafío-respuesta

En última instancia, su Raspberry Pi debe desafiarlo a autenticar su identidad y luego procesar su respuesta, lo que significa que debe habilitar las contraseñas de desafío y respuesta.

Para comenzar, abra el archivo de configuración de SSH para editarlo ejecutando el siguiente comando de Terminal:

sudo nano /etc/ssh/sshd_config

Dentro de este archivo, busque el ChallengeResponseAuthentication sección y cámbiela de “no” a “sí”.

Encuentra el

Ahora puede guardar el archivo «sshd_config» actualizado presionando Ctrl + O, seguido de Ctrl + X.

De vuelta en la Terminal, reinicie el demonio SSH con su nueva configuración:

sudo systemctl restart ssh

Dado que se han realizado cambios en la configuración de SSH, es una buena idea verificar que aún puede conectarse a su Raspberry Pi a través de SSH.

Para conectarse al servidor SSH, deberá conocer la dirección IP de su Raspberry Pi. Si aún no tiene esta información, ejecute el siguiente comando en su Pi:

Esto devolverá la dirección IP que necesita usar.

Cambie a su computadora portátil o computadora, inicie una Terminal y luego conéctese a su Raspberry Pi, asegurándose de reemplazar «10.3.000.0» con su dirección IP única:

Ahora está conectado a través de SSH.

Configuración de la autenticación de dos factores

A continuación, descargue la aplicación Authenticator para la generación del código de autenticación de un solo uso. Hay varias aplicaciones de autenticación en el mercado, pero estoy usando Google Authenticator para este tutorial, que está disponible para ambos. iOS y Androide.

Puede descargar la aplicación Google Authenticator de forma gratuita desde Google Play.

Una vez que haya descargado esta aplicación móvil, también deberá instalar el módulo PAM de Google Authenticator en su Raspberry Pi.

En su Pi, abra una ventana de Terminal y ejecute el siguiente comando:

sudo apt install libpam-google-authenticator

Una vez que Google Authenticator esté instalado tanto en su Raspberry Pi como en su dispositivo móvil, estará listo para configurar la autenticación de dos factores.

Crea una conexión: vinculando tu Pi a tu dispositivo móvil

Para crear un enlace entre su aplicación móvil y su Raspberry Pi, genere un código QR en su Pi y luego escanee este código con su teléfono inteligente o tableta.

Para generar el código QR, vuelva a su Raspberry Pi y ejecute el siguiente comando de Terminal:

Su Raspberry Pi le preguntará si sus tokens de autenticación deben tener una restricción de tiempo. Dado que es más seguro, normalmente desea generar tokens de autenticación basados ​​en el tiempo a menos que tenga una razón específica para no hacerlo.

Se recomienda que utilice Google Authenticator para generar tokens sensibles al tiempo.

La Terminal generará un código QR, aunque es posible que deba cambiar el tamaño de la Terminal para ver el código de barras completo.

También hay una serie de códigos de emergencia. Si alguna vez pierde, extravía o rompe su dispositivo móvil, estos códigos le permitirán acceder a su Raspberry Pi a través de SSH, incluso sin su dispositivo móvil. No se arriesgue a quedarse sin acceso a su Raspberry Pi. Tome nota de estos códigos y guárdelos en un lugar seguro.

Use este código QR para conectar su Raspberry Pi a la aplicación Google Authenticator:

1. En su teléfono inteligente o tableta, inicie la aplicación Google Authenticator.

2. En la esquina inferior derecha, toque el signo «+».

3. Seleccione «Escanear un código de barras QR». Cuando se le solicite, otorgue permiso a la aplicación para acceder a la cámara de su dispositivo.

4. Sostenga la cámara de su dispositivo frente a su monitor y colóquela sobre el código QR. Tan pronto como su teléfono inteligente o tableta reconozca el código QR, creará una cuenta y comenzará a generar códigos de autenticación automáticamente.

5. Vuelva a su Raspberry Pi; la Terminal le pedirá que actualice su archivo «google_authenticator». Presione la tecla Y en su teclado.

6. Se le preguntará si desea evitar que varias personas utilicen el mismo token de autenticación. Presione la tecla Y en su teclado.

7. Cuando se le pregunte si desea aumentar la ventana de desviación de tiempo, presione N, ya que esto lo ayudará a protegerse contra ataques de fuerza bruta.

8. La Terminal ahora le pedirá que habilite la limitación de velocidad, lo que lo restringirá a usted (¡y a los piratas informáticos potenciales!) a tres intentos de inicio de sesión cada 30 segundos. La limitación de velocidad puede ayudarlo a protegerse contra ataques de fuerza bruta y otros ataques basados ​​en contraseñas, por lo que debe optar por «Sí» a menos que tenga una razón específica para no hacerlo.

Módulos de autenticación conectables de Linux

Finalmente, debe habilitar la autenticación de dos factores en su Raspberry Pi utilizando los Módulos de autenticación conectables (PAM) de Linux.

Para comenzar, abra el archivo «sshd» en el editor de texto Nano:

sudo nano /etc/pam.d/sshd

Agregue la siguiente línea:

auth required pam_google_authenticator.so

Sin embargo, el lugar donde agrega la siguiente línea es importante:

1. Después de ingresar su contraseña

Si desea que se le solicite un código de autenticación único después de ingresar la contraseña de su Raspberry Pi, agregue esta línea después @include.

Quiero que se me solicite mi código de autenticación antes de ingresar mi contraseña.

2. Antes de ingresar su contraseña

Si desea que se le solicite su código de autenticación único antes de ingresar su contraseña, agregue esta línea antes @include.

Una vez que haya realizado estos cambios, guarde su archivo presionando Ctrl + O, seguido de Ctrl + X.

Reinicie el demonio SSH:

sudo systemctl restart ssh

Ahora, cada vez que intente conectarse a través de SSH, se le pedirá un código de verificación único.

Ahora, cuando intente conectarse a su Raspberry Pi a través de SSH, se le pedirá que ingrese un código de verificación.

Ahora que ha configurado la autenticación de dos factores en su Raspberry Pi, puede proceder a configurar su servidor web personal o un servidor de música. También puedes aumentar aún más la seguridad de tu SSH con estos trucos.

Experto Geek - Tu Guía en Tendencias Tecnológicas