🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Restablecer la contraseña de root en Linux

Actualizado el 17 de abril de 2026

¿Te has quedado fuera de tu propio servidor Linux? Olvidar la contraseña de root es una de esas situaciones que, aunque frustrante, tiene solución. Como administrador de sistemas, es una de las primeras habilidades que debes dominar, y como usuario avanzado, te sacará de más de un apuro. En esta guía extensa, te explicaré paso a paso los métodos más comunes y efectivos para restablecer la contraseña de root en Linux, ya sea en un servidor físico, una máquina virtual o en la nube. Cubriremos desde el modo de recuperación hasta el uso de live CDs, pasando por trucos con Grub. Al final, incluiré una sección de preguntas frecuentes (FAQ) para resolver las dudas más comunes. ¡Vamos allá!

¿Por qué necesitas restablecer la contraseña root?

Antes de meternos en los comandos, entendamos el contexto. La cuenta root es el superusuario de Linux, con permisos absolutos sobre el sistema. Si pierdes el acceso, no podrás instalar software, modificar configuraciones críticas ni gestionar usuarios. Las causas más habituales son:

  • Olvido: Sucede más de lo que crees, sobre todo si gestionas varios servidores.
  • Rotación de personal: Un administrador anterior se fue sin dejar la contraseña.
  • Ataque o corrupción: Alguien cambió la contraseña o el archivo /etc/shadow se dañó.
  • Migración: Al restaurar una copia de seguridad, las credenciales pueden no coincidir.

Sea cual sea tu caso, no entres en pánico. Linux ofrece varios caminos para recuperar root sin perder datos (siempre que tengas acceso físico o remoto al arranque).

Método 1: Modo de recuperación (Recovery Mode) con Grub

Este es el método más rápido y sencillo para sistemas Ubuntu, Debian y derivados. Grub (GRand Unified Bootloader) es el gestor de arranque por defecto. Aquí te explico cómo usarlo para restablecer contraseña root.

Paso a paso en el arranque

  1. Reinicia el sistema y mantén presionada la tecla Shift (o pulsa Esc repetidamente) justo después del POST. Aparecerá el menú de Grub.
  2. Selecciona la entrada de kernel (normalmente la primera) y presiona e para editar las opciones de arranque.
  3. Busca la línea que comienza con linux o linux16. Al final de esa línea, verás texto como ro quiet splash. Bórralo y sustitúyelo por:
    rw init=/bin/bash
    
    Esto monta el sistema de archivos en modo lectura/escritura y arranca directamente una shell de Bash como root.

[WARNING] Ten cuidado al editar la línea. Un error tipográfico puede impedir el arranque. Si pasa, reinicia y vuelve a intentarlo.

  1. Presiona Ctrl + X o F10 para arrancar con los nuevos parámetros. En segundos, estarás en una consola root sin contraseña.
  2. Ahora, cambia la contraseña de root con:
    passwd root
    
    Te pedirá que introduzcas la nueva contraseña dos veces. Elige una segura.
  3. Si el sistema usa SELinux (como en CentOS/RHEL), es posible que necesites actualizar el contexto:
    touch /.autorelabel
    
  4. Reinicia con:
    exec /sbin/init
    
    O simplemente reboot -f. El sistema arrancará normalmente con la nueva contraseña.

¿Y si el sistema de archivos está montado como solo lectura?

A veces, al usar init=/bin/bash, el sistema monta / como solo lectura. Si ves errores al ejecutar passwd, haz esto antes:

mount -o remount,rw /

Luego repite el comando passwd root. Este truco es muy útil en distribuciones como CentOS 7.

Método 2: Live CD o USB (Recuperación externa)

Cuando no puedes acceder al menú de Grub (por ejemplo, en sistemas con cifrado de disco completo o con un bootloader diferente), un Live CD es tu mejor aliado. Necesitarás un USB o CD con una distribución Linux (Ubuntu, SystemRescue, GParted live, etc.).

Proceso con un Live USB

  1. Arranca desde el medio externo (configura la BIOS/UEFI para que arranque desde USB).
  2. Una vez en el escritorio live, abre una terminal.
  3. Identifica la partición donde está instalado tu sistema. Usa:
    lsblk
    
    Busca la partición raíz (normalmente sda1, sda2, nvme0n1p2, etc.). Si tienes dudas, monta una por una y revisa el contenido.
  4. Monta la partición raíz en /mnt:
    sudo mount /dev/sda1 /mnt
    
    (Reemplaza sda1 por tu partición real).
  5. Si tienes particiones separadas para /boot, /home o /var, móntalas también:
    sudo mount /dev/sda2 /mnt/boot
    
  6. Cambia la contraseña de root usando chroot para simular el entorno del sistema:
    sudo chroot /mnt
    passwd root
    
  7. Sal del chroot con exit, desmonta las particiones (sudo umount /mnt) y reinicia sin el medio externo.

[TIP] Si el sistema usa cifrado LUKS, necesitarás desbloquear la partición antes de montarla. Usa sudo cryptsetup luksOpen /dev/sdaX cryptroot y luego monta /dev/mapper/cryptroot.

Método 3: Edición directa del archivo shadow (solo para valientes)

El archivo /etc/shadow almacena los hashes de las contraseñas. Si tienes acceso de lectura/escritura a él (desde un live CD o en modo recovery), puedes eliminar la contraseña de root. Esto deja la cuenta sin contraseña, lo que te permite iniciar sesión y luego establecer una nueva.

Cómo hacerlo

  1. Sigue los pasos 1-5 del método Live CD para montar la partición raíz y hacer chroot.
  2. Abre el archivo shadow con un editor:
    nano /etc/shadow
    
  3. Busca la línea que comienza con root:. Verás algo como:
    root:$6$salt...hash:18000:0:99999:7:::
    
  4. Borra todo entre el primer y segundo :. Es decir, deja la línea así:
    root::18000:0:99999:7:::
    
  5. Guarda y cierra el editor. Sal del chroot y reinicia.
  6. Ahora, cuando inicies sesión como root, el sistema no te pedirá contraseña. Una vez dentro, ejecuta passwd root para establecer una nueva.

[WARNING] Este método es peligroso porque deja la cuenta root sin protección hasta que establezcas una nueva contraseña. Si alguien accede físicamente al equipo en ese intervalo, podría tomar el control. Úsalo solo como último recurso.

Método 4: Recuperación remota con consola de emergencia (VPS/Nube)

Si tu servidor está en la nube (DigitalOcean, AWS, Linode, etc.), no tienes acceso físico. La mayoría de proveedores ofrecen una consola de emergencia o modo recovery desde su panel de control. El proceso varía, pero la idea general es:

  1. Accede al panel de tu proveedor y busca la opción "Recovery Mode" o "Boot from ISO".
  2. Arranca el servidor con una imagen live (por ejemplo, SystemRescue).
  3. Conéctate por SSH a la IP de recovery (te la dará el proveedor).
  4. Monta la partición raíz como en el método 2 y cambia la contraseña.
  5. Reinicia en modo normal.

[TIP] Algunos proveedores como Vultr o Hetzner permiten montar una ISO directamente y acceder por VNC. Es muy similar al método Live CD.

SysAdmin FAQ: Preguntas frecuentes sobre recuperación de root

Aquí respondo las dudas más comunes que surgen al restablecer contraseña root.

1. ¿Puedo recuperar la contraseña root sin reiniciar el servidor?

No, a menos que tengas otra cuenta con permisos sudo. Si tienes un usuario sudo, puedes ejecutar:

sudo passwd root

Si no tienes sudo y el servidor está en producción, tendrás que planificar una ventana de mantenimiento.

2. ¿Qué hago si el sistema usa SELinux?

En distribuciones como CentOS/RHEL/Fedora, después de cambiar la contraseña en modo recovery, es recomendable ejecutar touch /.autorelabel antes de reiniciar. Esto reetiqueta los archivos de seguridad y evita problemas de contexto.

3. ¿Funciona en sistemas con cifrado de disco completo (LUKS)?

Sí, pero necesitarás la frase de cifrado (passphrase) para desbloquear la partición. Si la olvidaste, la recuperación es mucho más compleja (casi imposible). En ese caso, solo un backup te salvará.

4. ¿Y si el bootloader es UEFI y no Grub?

El método de edición de parámetros de arranque funciona igual en UEFI, pero la tecla para entrar al menú puede ser Esc, F2 o F12. Busca en la documentación de tu placa base o máquina virtual.

5. ¿Puedo cambiar la contraseña root desde un panel de control como Syspanel (HestiaCP)?

Syspanel (anteriormente conocido como HestiaCP) no tiene una función directa para cambiar la contraseña root del sistema, pero sí permite gestionar usuarios y contraseñas de bases de datos o FTP. Para cambiar la contraseña root, deberás acceder por SSH o usar los métodos descritos. Recuerda que el acceso a Syspanel suele ser por el puerto 2106 (https://tu-servidor:2106). Si tienes acceso a Syspanel, puedes crear un usuario con permisos sudo y desde ahí ejecutar sudo passwd root.

6. ¿Pierdo datos al restablecer la contraseña?

No. Cambiar la contraseña de root no afecta a tus archivos, bases de datos ni configuraciones. Solo modificas el hash en /etc/shadow. Eso sí, si usas cifrado de disco y no tienes la passphrase, los datos serán inaccesibles.

7. ¿Qué hago si el método de Grub no funciona porque el menú no aparece?

A veces, Grub está oculto o el tiempo de espera es muy corto. Prueba a pulsar Shift repetidamente (en BIOS) o Esc (en UEFI) justo después de encender. Si no funciona, usa un Live CD.

8. ¿Es seguro dejar la cuenta root sin contraseña temporalmente?

No. Si usas el método de edición del shadow, asegúrate de establecer una contraseña fuerte inmediatamente después del primer inicio de sesión. Mientras tanto, desconecta el servidor de la red si es posible.

Consejos finales para evitar futuros dolores de cabeza

  • Usa autenticación por clave SSH: Deshabilita el login por contraseña para root y usa solo claves. Así, aunque olvides la contraseña, podrás acceder por SSH.
  • Crea un usuario sudo: No trabajes siempre como root. Ten un usuario con permisos sudo y una contraseña que recuerdes.
  • Documenta las contraseñas: Usa un gestor de contraseñas (Bitwarden, KeePass) para almacenar las credenciales de tus servidores.
  • Haz backups regulares: Especialmente de /etc/shadow y /etc/passwd. Una copia de seguridad te permite restaurar el acceso rápidamente.
  • Prueba estos métodos en un entorno de laboratorio: Antes de enfrentarte a una emergencia real, practica con una máquina virtual. Te dará confianza.

Resumen: Elige el método según tu situación

SituaciónMétodo recomendado
Tienes acceso físico o por VNC al arranqueModo recovery con Grub
No puedes acceder al menú de GrubLive CD/USB
El sistema está en la nube (VPS)Consola de emergencia del proveedor
Tienes otro usuario sudosudo passwd root
Último recurso, sin miedo a riesgosEditar /etc/shadow

Restablecer la contraseña de root en Linux es una habilidad fundamental para cualquier SysAdmin. Con estos métodos, podrás recuperar root en la mayoría de situaciones sin perder datos. Recuerda siempre actuar con calma, seguir los pasos con cuidado y, sobre todo, tener un plan de contingencia (backups, claves SSH, etc.). ¡Ahora ya estás preparado para afrontar ese olvido con confianza!

Si te surge alguna duda adicional, no dudes en consultar la documentación de tu distribución o preguntar en foros especializados. ¡Buena suerte y feliz administración!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel