sshd: Cómo habilitar la autenticación PAM para usuarios específicos bajo

9

Estoy usando sshd y permito los inicios de sesión con autenticación de clave pública.

Quiero permitir que usuarios selectos inicien sesión con un módulo de autenticación de dos factores PAM.

¿Hay alguna forma de permitir la autenticación de dos factores PAM para un usuario específico?

Del mismo modo: solo quiero habilitar la autenticación de contraseña para cuentas específicas. Quiero que mi demonio SSH rechace los intentos de autenticación de contraseña para evitar que los posibles piratas informáticos piensen que no aceptaré la autenticación de contraseña, excepto en el caso en que alguien conozca mi cuenta secreta fuertemente protegida, que está habilitada con contraseña. Quiero hacer esto en los casos en que mis clientes SSH no me permitan hacer una clave secreta o una autenticación de dos factores.

Puntilla
fuente
¿Qué producto de dos factores?
Scott Pack
google-authenticator
Brad

Respuestas:

8

Probablemente podría manejar esto con el pam_listfilemódulo. Cree un /etc/pam.d/sshdarchivo que se parezca a:

auth requisite  pam_listfile.so item=user sense=allow file=/etc/authusers
auth sufficient pam_securid.so
auth required   pam_deny.so

Esto permitiría que solo las personas incluidas en /etc/authusersla lista puedan autenticarse con un módulo de dos factores (en nuestro caso, secureid). En realidad no he probado esta configuración, pero la teoría es sólida.

Puede simplificarlo permitiendo que cualquiera se autentique utilizando la autenticación de dos factores; presumiblemente, solo aquellas personas con los dispositivos / configuración apropiados podrían tener éxito, por lo que obtendría efectivamente el mismo comportamiento.

larsks
fuente
Estoy haciendo algo similar: sshd permite Chal / Resp y Secret Key. En realidad, solo una cuenta está configurada para el desafío / respuesta del Autenticador de Google, por lo que otras cuentas DEBEN usar solo la clave secreta. Supongo que esto es tan bueno como voy a conseguir ...
Brad
3

Usando la solución a continuación, el Módulo PAM (autenticador de Google) se puede deshabilitar para usuarios específicos:

1) Cree un grupo de usuarios en la instancia de Linux. MFA / PAM se deshabilitará para los usuarios presentes en este nuevo grupo:

sudo groupadd <groupname>

2) Crear usuario o agregar usuario existente al grupo recién creado

sudo useradd <username>
sudo usermod -a -G <groupname> <username>

3) Edite el archivo /etc/pam.d/sshd y agregue la siguiente declaración para omitir el módulo PAM para el grupo recién creado.

auth [success=done default=ignore] pam_succeed_if.so user ingroup <groupname>

Opcional-

Si se requiere acceso completo para este nuevo grupo, agregue la línea siguiente al archivo visudo-

%<groupname>ALL=(ALL)       NOPASSWD: ALL

Cuando se creará un usuario y se agregará al nuevo grupo, se omitirá MFA para esos usuarios.

Referenciado desde - TechManyu Blog

Abhimanyu Garg
fuente