Cambio de clave de root en servidor linux (cuando desconocemos la clave y no tenemos acceso)

Forma más rápida:
http://www.ubuntu-guia.com/2010/08/recuperar-contrasena-ubuntu-root.html

Para poder cambiar la clave de root de un servidor linux tenemos que tener las siguientes herramientas.

1º Acceso por consola a la maquina (ya sea fisica o virtual). No podemos hacer el cambio a traves de un acceso SSH.

2º Una distribucion live que nos permita acceso al disco duro del servidor instalado (da igual una distro de escritorio o de consola). En nuestro caso hemos usado la distro Gparted Live!

Para bajar la distribucion: http://downloads.sourceforge.net/project/gparted/gparted-live-stable/0.6.4-1/gparted-live-0.6.4-1.iso?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fgparted%2Ffiles%2Fgparted-live-stable%2F&ts=1286960132&use_mirror=mesh

Se arranca la maquina con el CD y se configura para que el servidor arranque desde el mismo como primera opción.
Aparece una pantalla que nos pide opciones de arranque. Seleccionamos la primera y esperamos que aparezca el escritorio.

Cuando esté arrancado abrimos una consola para poder operar sobre los datos del disco duro.

Ahora tenemos que montar la particion "/" para poder manipular el fichero /etc/shadow

Para ello con el comando:

fdisk -l

Disk /dev/sda: 398.9 GB, 398999945216 bytes
255 heads, 63 sectors/track, 48508 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000080

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          12       96358+  83  Linux
/dev/sda2              13       48508   389544120   83  Linux

Debemos de montar la primera particion que no tenga la marca de arrancable (normalmente esta es la "/")

Para montar la particion solo tenemos que hacer:

mount -t ext3 /dev/sda2 /mnt/sda2

Notas:
La carpeta /mnt/sda2 debe de existir, sino hay que crearla con el comando:

mkdir /mnt/sda2

/dev/sda2 puede ser o no ser la particion "/" sino probaremos con otras particiones (/mnt/sda3, /mnt/sda4, /mnt/sda5 ….)

Para cambiar la clave de root seguimos los siguientes pasos:

1º Usamos el comando

passwd root (que nos pedira una clave nueva) ponemos la clave 2 veces y aceptamos.

2.- Editamos el fichero /etc/shadow y sacamos la linea que contiene el usuario root:

root:$1$IUjC95.B$GH3wfYjxmtM3Mgf2dAFkf/:14757:0:99999:7:::

Seleccionamos la parte entre los ":" despues del nombre de usuario root y los siguientes ":" En este caso la clave es:

$1$IUjC95.B$GH3wfYjxmtM3Mgf2dAFkf/

Editamos el fichero /mnt/sda2/etc/shadow que es el fichero de claves en el disco duro del servidor. Cambiamos la clave situada en la misma posicion que hemos descrito en el punto anterior por la que hay en este fichero.
La clave del fichero /mnt/sda2/etc/shadow es la clave desconocida y por tanto la clave que queremos cambiar.

Una vez cambiado el fichero reinciamos el servidor sin el disco de GParted Live! y entramos como root con la clave que acabamos de generar.

Si hemos seguido los pasos correctamente deberiamos de entrar correctamente.

« Linux

Si no se indica lo contrario, el contenido de esta página se ofrece bajo Creative Commons Attribution-ShareAlike 3.0 License