viernes, 9 de julio de 2010

Cómo reasignar (resetear) la clave de un usuario en linux (una de tantas formas)

Esto es muy útil para admins! Este método es generalmente utilizado cuando se olvida (o alquien nos ha cambiado) una contraseña. Ahora, si realmente deseamos proteger nuestro sistema contra alquien que pueda cambiar una contraseña, teniendo acceso remoto o local al mismo, mejor investigar también otros métodos, algunos de ellos: stack overflows, exploits y symbolic links escalation.

Dicho esto, sigamos adelante, primero debe tener acceso físico a la máquina y poderla reiniciar... Si es así...

Reinicie la máquina, cuando consiga el gestor de arranque (probablemente GRUB), presione la letra e (edit), generalmente sobre la primera línea - correspondiente al kernel más actualizado.

Una vez ubicado en el modo de edición, debe colocarse sobre la línea que se refiere a la carga del kernel, debería ser la primera línea de unas 2 o 3 opciones, y cuando esté allí presione c (de command) o e (de edit) dependiendo del gestor, al presionar esto, debería ver una consola con la línea que escogió.

Al final de la linea antes de la opción ro, si es que la tiene, agregue init=/bin/sh

Luego presione enter y posicionándose nuevamente sobre la línea, presione la b (de boot) para que la máquina arranque con esa opción... Al arrancar debería caer en una consola; apenas terminado el reconocimiento de dispositivos.

Estando en la consola deberá remontar el disco duro con la opción de escritura para poder cambiar o borrar la clave del root o cualquier otro usuario, para ello deberá escribir:


# mount / -o remount, rw


Listo! Ahora sólo deberá ingresar una nueva contraseña para el usuario que desee:


# passwd CUALQUIER_USUARIO


Otra opción, en lugar de utilizar el comando passwd, es ingresar al archivo /etc/shadow y borrar el cifrado de la contraseña para un usuario, es decir, el montón de caracteres después de los dos puntos (:) seguidos al nombre del usuario, hasta los próximos dos puntos (:). El usuario quedaría sin contraseña.

Luego de hacer esto salve, reinicie y listo!

NOTA: Ubuntu instala un modo de mantenimiento que le permitirá hacer esto simplemente seleccionando la opción del gestor de arranque... Sin todo lo de init=/bin/sh y remontar el disco. Y bueno, esto siempre puede evitarse colocando contraseñas al gestor de arranque, para lo que alquien podría entrar con un live CD (montar la unidad y acceder al /etc/shadow), lo que también puede evitarse colocando inicio por disco y definiendo contraseña al BIOS, para lo que también alquien podría brincar el BIOS quitando la pila al computador (OJO. Hay programas capaces de hacer esto)... En fin, si desea evitar que alquien pueda cambiar su contraseña de esta forma, siempre puede encerrar el equipo bajo llave ;D

No hay comentarios:

Publicar un comentario