User Tools

Site Tools


rootear_sistemas_gnu_linux_desde_grub

Conseguir root en sistemas GNU/Linux con GRUB sin tener la password (rootear)

Mayoría de distribuciones de GNU/Linux

Entrar en Grub y pulsar la tecla ESC.
Pulsar la tecla “e”.
En la linea del kernel agregar “init=/bin/bash”. Si se desea se puede probar antes simplemente agregando “single”, ya que dependiendo de la distro, esta puede o no pedir contraseña (mirar /etc/inittab).

Suponiendo que la password es solicitada, se debe indicar que en el inicio se ejecute una terminal, para el ejemplo Bash.

"Linux boot /init.... ro init=/bin/bash "

Pulsar “Cntrl + x

Remontar el sistema de ficheros raíz del GNU/Linux instalado, cambiar la password y reiniciar el sistema.

mount -o remount,rw /dev/sdaX /
passwd
reboot

Rootear sistemas RedHat / CentOS / Derivados

Para esta familia de sistemas es suficiente con entrar en el modo “single user”, a diferencia de otros sistemas no pedirá password y no es necesario por tanto impedir que init arranque.

CentOS =< 6.X

Entrar en Grub y pulsar la tecla ”a”. Agregar un espacio y un “1” al final de la linea para posteriormente pulsar la tecla “enter”.

... rhgb quiet 1

¿De qué depende el uso de contraseña en el modo single? Fichero /etc/inittab. S = 1 = single.

~~:S:wait:/sbin/sulogin

Si se desea que el sistema solicite o no una password al entrar en el modo single, se debe agregar o comentar dicha linea en el fichero inittab.

CentOS >= 7.X

Metodo 1: Si NO se conoce la password de root.

  1. Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
  2. Buscar la entrada que compienza con “linux16”
  3. Modificar “ro” por “rw init=/sysroot/bin/sh”
  4. Pulsar CTRL-X o F10 para arrancar con las opciones especificadas.
  5. Una vez se muestra la terminal, se debe ejecutar el comando chroot.
chroot /sysroot

Método 2: Si NO se conoce la password de root.

  1. Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
  2. Buscar la entrada que compienza con “linux16”
  3. Modificar “rhgb quiet” por “init=/bin/sh”
  4. Pulsar CTRL-X o F10 para arrancar con las opciones especificadas.
  5. Una vez se muestra la terminal, se debe remontar la partición raiz con permido de escritura.
mount -o remount,rw /
# exec /sbin/init 6"   # Reiniciar.

Método 3: Si se conoce la password de root, se puede usar el modo de emergencia para tareas de rescate. Útil cuando se necesita reparar algo y el sistema no arranca correctamente. Lógicamente no sirve para recuperar la password de root ya que es necesaria para ingresar en este modo.

  1. Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
  2. Buscar la entrada que compienza con “linux16”
  3. Al final de la linea agregar “systemd.unit=rescue.target”
  4. Pulsar CTRL-X o F10 para arrancar en el modo single.

Ubuntu

  1. Si no se muestra el menú de Grub, dejar pulsada la tecla Shift durante el arranque.
  2. Dirigirse a un modo de recuperación, puede que se encuentre en opciones avanzadas.
  3. Seleccionar la opcion “Drop to root shell prompt”.
  4. Remontar / con permiso de escritura: “mount -o remount,rw /dev/sdaX /”
  5. Utilizar el comando passwd para reiniciar la contraseña.

Método estándar con LiveCD

  1. Identificar el disco / partición donde se tiene GNU/linux con por ejemplo “fdisk-l”
  2. Montar la partición en /mnt: “mount /dev/sda1 /mnt”
  3. Montar ahora el sistema de ficheros del disco como si fuera el del liveCD.
for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done
  1. Nos enjaulamos en el entorno montado mediante “chroot /mnt”
  2. Modificar la contraseña mediante “passwd” y reiniciar.
rootear_sistemas_gnu_linux_desde_grub.txt · Last modified: 2020/12/25 22:57 by 127.0.0.1