LinuxParty

NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

De forma predeterminada, SSH ya utiliza la comunicación de datos segura entre máquinas remotas, pero si desea agregar una capa de seguridad adicional a sus conexiones SSH, puede agregar un módulo Google Authenticator ( autenticación de dos factores ) que le permite ingresar uno al azar. contraseña de tiempo ( TOTP ) código de verificación mientras se conecta a los servidores SSH . Deberá ingresar el código de verificación desde su teléfono inteligente o PC cuando se conecte.

Google Authenticator es un módulo de código abierto que incluye implementaciones de tokens de verificación de códigos de acceso únicos ( TOTP ) desarrollados por Google .

Admite varias plataformas móviles, así como PAM (Módulo de autenticación conectable) . Estos códigos de acceso de un solo uso se generan utilizando estándares abiertos creados por la Iniciativa OATH para la Autenticación Abierta ).

En este artículo, le mostraré cómo instalar y configurar SSH para la autenticación de dos factores en distribuciones de Linux basadas en RedHat y Debian , como Fedora, CentOS Stream, Rocky Linux y AlmaLinux, Ubuntu, Debian y Mint.

Instalación de Google Authenticator en Linux

Abra la máquina en la que desea configurar la autenticación de dos factores e instale las siguientes bibliotecas PAM junto con las bibliotecas de desarrollo que se necesitan para que el módulo PAM funcione correctamente con el módulo de autenticación de Google .

En los sistemas basados ​​en RedHat, instale el paquete ' pam-devel ' usando el siguiente comando yum .

# yum install google-authenticator -y

En los sistemas basados ​​en Debian, instale el paquete ' libpam0g-dev ' usando el siguiente comando apt .

$ sudo apt install libpam-google-authenticator -y

Generar tokens de autenticación de Google

Una vez que ejecute el comando ' google-authenticator ', le hará una serie de preguntas.

# google-authenticator

Simplemente escriba " y " ( ) como respuesta en la mayoría de las situaciones. Si algo sale mal, puede volver a escribir el comando ' google-authenticator ' para restablecer la configuración.

  • ¿Quiere que los tokens de autenticación se basen en el tiempo (sí/no) y

Después de esta pregunta, obtendrá su ' clave secreta ' y ' códigos de emergencia '. Anote estos detalles en alguna parte, necesitaremos la 'clave secreta ' más adelante para configurar la aplicación Google Authenticator .

# Google-autenticador

¿Quiere que los tokens de autenticación se basen en el tiempo (sí/no) y 
Advertencia: pegar la siguiente URL en su navegador expone el secreto de OTP a Google:
  https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/ root@Xxxuser %3Fsecret%3DCYZF2YF7HFGX55ZEPQYLHOO5JM%26emisor%3DXxxuser
No se pudo usar libqrencode para mostrar el código QR visualmente para escanear.
Considere escribir el secreto de OTP en su aplicación manualmente.
Su nueva clave secreta es: CYZF2YF7HFGX55ZEPQYLHOM 
Ingrese el código de la aplicación (-1 para omitir): -1  Confirmación de código omitida 
Sus códigos de emergencia son: 83714291 53083200 80975623 57217008 77496339

A continuación, siga el asistente de configuración y, en la mayoría de los casos, escriba la respuesta como " y " ( ), como se muestra a continuación.

¿Quieres que actualice tu archivo "/root/.google_authenticator" (s/n)? y  

¿Quieres prohibir varios usos del mismo token de autenticación?
Esto lo restringe a un inicio de sesión cada 30 segundos, pero aumenta sus
posibilidades de notar o incluso prevenir ataques de intermediarios (sí/no). y

De forma predeterminada, los tokens son válidos durante 30 segundos y para compensar
el posible tiempo. -sesgo entre el cliente y el servidor, permitimos un token
adicional antes y después de la hora actual. Si tiene problemas con la sincronización
horaria deficiente, puede aumentar la ventana de su tamaño predeterminado de 1:30 min
aproximadamente 4 min. quieres hacerlo (t/n)ySi la computadora en la que está
iniciando sesión no está protegida contra intentos de inicio de sesión de 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 s. ¿Desea habilitar la limitación de velocidad (s/n)? y

Generar tokens de autenticación de Google

Configuración de SSH para usar Google Authenticator en Linux

Abra el archivo de configuración de PAM ' /etc/pam.d/sshd ' y agregue la siguiente línea al final del archivo.

auth required pam_google_authenticator.so nullok
auth required pam_permit.so

Configurar PAM para SSH

A continuación, abra el archivo de configuración de SSH ' /etc/ssh/sshd_config ' y desplácese hacia abajo para encontrar la línea que dice.

ChallengeResponseAuthentication no

Cámbielo a “ ”. Entonces, se vuelve así.

ChallengeResponseAuthentication yes

Configurar SSH para Google Auth

Finalmente, reinicie el servicio SSH para tomar nuevos cambios.

# systemctl restart sshd
O
$ sudo systemctl restart sshd

Configuración de la aplicación de autenticación de Google

Inicie la aplicación Google Authenticator en su teléfono inteligente. Presione + y elija " Ingresar una clave de configuración ". Si no tiene esta aplicación, puede descargar e instalar la aplicación Google Authenticator en sus dispositivos Android/iPhone/Blackberry .

Agregue su cuenta ' Nombre ' e ingrese la ' clave secreta ' generada anteriormente.

Clave secreta SSH

Generará una contraseña de un solo uso ( código de verificación ) que cambiará constantemente cada 30 segundos en su teléfono.

Código de autenticación de Google SSH

Ahora intente iniciar sesión a través de SSH , se le solicitará un código de autenticación de Google ( código de verificación ) y una contraseña cada vez que intente iniciar sesión a través de SSH . Solo tiene 30 segundos para ingresar este código de verificación, si lo pierde, se generará un nuevo código de verificación.

login as: Xxxuser
Access denied
Using keyboard-interactive authentication.
Verification code:
Using keyboard-interactive authentication.
Password:
Last login: Tue Apr 23 13:58:29 2022 from 172.16.25.125
[root@Xxxuser ~]#

Si no tiene un teléfono inteligente, también puede usar un complemento de Firefox llamado Authenticator para realizar la autenticación de dos factores.

Importante: la autenticación de dos factores funciona con un inicio de sesión SSH basado en contraseña. Si está utilizando una sesión SSH de clave privada/pública , ignorará la autenticación de dos factores e iniciará sesión directamente.

Pin It

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías