systemadmin.es » Seguridad » Bloquear el acceso de un usuario al sistema

Bloquear el acceso de un usuario al sistema

Para bloquear el acceso de un determinado usuario al sistema se puede hacer de muchas formas, quiza la más elegante es mediante usermod. Pero hay un detalle importante que se puede pasar con facilidad: Que pasa con las claves ssh?

Mediante usermod podemos bloquear un usuario:

# usermod -L jprats

Y desbloquear el usuario:

# usermod -U jprats

Este comando lo que hace es añadir una admiración delante de la hash de la contraseña del shadow:

# cat /etc/shadow | grep jprats
jprats:$1$xDPXDXDXDwM$1/e1234.SLOL/LOLx.:14281:0:99999:7:::
# usermod -L jprats
# cat /etc/shadow | grep jprats
jprats:!$1$xDPXDXDXDwM$1/e1234.SLOL/LOLx.:14281:0:99999:7:::
# usermod -U jprats
# cat /etc/shadow | grep jprats
jprats:$1$xDPXDXDXDwM$1/e1234.SLOL/LOLx.:14281:0:99999:7:::

Aún así, si se han habilitado las claves ssh sigue pudiendo entrar, por lo que siempre que bloqueemos un usuario deberemos deshabilitar las claves ssh que tenga dicho usuario, por ejemplo, con un simple mv:

# mv ~jprats/.ssh ~jprats/nossh

Relacionados

Imprimir Imprimir

3 comments to “Bloquear el acceso de un usuario al sistema”

  1. ¿Y no sería más fácil editando el /etc/passwd y poniendo en el último campo el “/sbin/nologin”?
    Sí es elegante la forma que propones, pero con esto (creo que) no generas el “problema” de las claves SSH.

  2. En el caso que propones del /sbin/nologin el problema es que aún podrías hacer tuneles ssh con la opción -N (No executar un comando en el sistema remoto, solo conectar)

  3. Creo que también tendrías que mirar su cola de cron,los procesos que tiene corriendo, su public_html, … No vaya a ser que deje alguna vía de entrada.

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>