175 votos

cómo deshabilitar el acceso a SSH con contraseña para algunos usuarios?

En Linux (Debian Squeeze) me gustaría deshabilitar el acceso a SSH usando la contraseña a algunos usuarios (grupo seleccionado o todos los usuarios excepto root). Pero no quiero deshabilitar el ingreso usando un certificado para ellos.

editar: ¡Muchas gracias por la respuesta detallada! Por alguna razón esto no funciona en mi servidor:

Match User !root
PasswordAuthentication no

...pero puede ser fácilmente reemplazado por

PasswordAuthentication no
Match User root
PasswordAuthentication yes

191voto

Cakemox Puntos 10650

Pruebe Match en sshd_config :

Match User user1,user2,user3,user4
    PasswordAuthentication no

O por grupo:

Match Group users
    PasswordAuthentication no

O, como se menciona en el comentario, por negación:

Match User !root
    PasswordAuthentication no

Tenga en cuenta que la coincidencia es efectiva "hasta que otra línea de coincidencia o el final del archivo." (la hendidura no es significativa)

4voto

AnrDaemon Puntos 21

Sin embargo, ten en cuenta que no puedes relajar las restricciones con las entradas de los partidos. Sólo puedes reforzarlas.

Es decir..,

PermitRootLogin no

Match host 192.168.0.0/24
PermitRootLogin without-password

no funcionará. Tienes que escribir la caja de cerillas opuesta, si realmente quieres hacerlo:

PermitRootLogin without-password

Match host !192.168.0.0/24
PermitRootLogin no

3voto

mitchellhislop Puntos 121

Hay varias maneras de hacerlo, primero, podrías ejecutar un segundo demonio sshd en un puerto diferente con una configuración diferente, es un poco como un hack, pero con un poco de trabajo chroot debería funcionar bien.

Además, podrías permitir la autenticación de la contraseña, pero bloquear las contraseñas para todos menos para el único usuario. Los usuarios con contraseñas bloqueadas seguirán siendo capaz de autenticarse con claves públicas.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: