Perder una contraseña en un sistema Linux puede convertirse rápidamente en un obstáculo crítico, ya sea en una estación de trabajo, un servidor corporativo o incluso una Raspberry Pi doméstica. Afortunadamente, el ecosistema Linux, con una amplia gama de distribuciones como Ubuntu, Debian, Fedora, Arch Linux, CentOS, Linux Mint, openSUSE, Manjaro, Raspberry Pi OS y Red Hat, ofrece varios métodos robustos para recuperar o restablecer una contraseña olvidada. Estos métodos varían según la configuración del sistema, el acceso al hardware y los entornos de arranque, pero siempre comparten un objetivo común: restaurar el acceso de forma segura al usuario legítimo, minimizando los riesgos para la integridad de los datos. Esta guía práctica le guía paso a paso a través de estas tareas esenciales, explicando los mecanismos subyacentes del sistema, ilustrando los comandos y ofreciendo consejos prácticos para gestionar eficazmente un restablecimiento sin comprometer la seguridad. Procedimiento completo para restablecer una contraseña de Linux con una memoria USB en vivo.
Cuando se pierde la contraseña de usuario o root, uno de los métodos más seguros y versátiles para recuperarla es a través de un entorno en vivo de Linux, generalmente arrancado desde una unidad USB de arranque. Esta técnica se aplica a las distribuciones más populares, como Ubuntu, Debian, Fedora o Arch Linux, y proporciona control total sobre los archivos del sistema sin modificar la instalación existente.
Creación y arranque desde una memoria USB Live de Linux
Para empezar, es esencial contar con una unidad USB de arranque que contenga una imagen de Linux. Herramientas como Rufus o Ventoy
facilitar esta creación. Ventoy, por ejemplo, es particularmente útil para mantener múltiples imágenes ISO en una sola unidad, un verdadero activo para los administradores de sistemas que hacen malabarismos con distribuciones como CentOS, openSUSE o Linux Mint. Después de preparar su llave USB, deberá cambiar el orden de inicio en BIOS/UEFI o usar el Menú de inicio (a menudo accesible a través de las teclas F8, F12 o Esc según el fabricante) para iniciar con la tecla. Este paso le presenta un sistema Linux efímero, sin sobrescribir la instalación local. Identificar y montar la partición del sistema.
Una vez en el entorno Live, abra una terminal. el orden lsblk Enumera todos los dispositivos de almacenamiento y sus particiones:
lsblk
le permite localizar su disco principal (a menudo llamado sda ) y su partición raíz (p. ej.
- sda2 ). Los tamaños y etiquetas indicados ayudan a identificar la partición correcta, fundamental para no cometer errores.Una vez identificada, esta partición debe montarse en un punto de acceso para poder acceder a ella. Por ejemplo : montaje sudo /dev/sda2 /mntEste montaje expone todo el sistema de archivos instalado en la partición, sin sobrescribir ni modificar nada en este momento.
- Cambie la raíz del sistema para que funcione en la instalación real (chroot)
el orden
chroot
(
cambiar raíz
) es un truco fundamental que cambia el contexto de los comandos a la partición montada: sudo chroot/mnt Entonces estará en su sistema almacenado en el disco, incluso si inició desde la llave USB en vivo. Todos los cambios, incluido el restablecimiento de contraseñas, se aplicarán directamente a su sistema.Restablecer usuario o contraseña de rootAntes de cambiar una contraseña, es útil consultar la lista de cuentas de usuario:
ls /casa
Este comando enumera los directorios de usuarios, indicando los nombres de las cuentas presentes.
Para cambiar la contraseña de un usuario, se usa el siguiente comando:
passwd user
Por ejemplo, para restablecer la contraseña del usuario «alice»:
passwd alice
El sistema solicitará la nueva contraseña dos veces para confirmarla. Tenga en cuenta que en esta terminal, el teclado suele estar configurado en QWERTY por defecto, así que tenga cuidado con los caracteres introducidos.
Para cambiar la contraseña de root, en chroot, el comando es más sencillo:
passwd
Esto modifica directamente la contraseña de superusuario. Este paso es crucial para recuperar el acceso completo si se pierde esta contraseña.
Finalice y reinicie el sistema
Una vez realizados los cambios, salga del entorno chroot y reinicie el equipo:
exit
para salir del chroot.
sudo reboot
para reiniciar.
- No olvide retirar la unidad USB o reconfigurar el orden de arranque para que arranque automáticamente desde el disco. Usar GRUB para restablecer una contraseña perdida en Linux El gestor de arranque GRUB (Grand Unified Bootloader) es clave para acceder a las diferentes versiones de Linux instaladas en un equipo y ofrece un método intuitivo para restablecer una contraseña sin una unidad USB. Este método es ideal para distribuciones populares como Ubuntu, Fedora, openSUSE y Arch Linux.
- Acceder y modificar las opciones de arranque de GRUB Al arrancar el sistema, pulse la tecla MAYÚS o Esc para mostrar el menú de GRUB. Algunas distribuciones ocultan este menú por defecto, por lo que es importante saber cómo forzar su aparición.
Una vez en el menú, navegue hasta la entrada correspondiente a la instalación de Linux (p. ej., «Ubuntu») y pulse la tecla e para editar las opciones de arranque.
Verá un editor con varias líneas, incluyendo una que empieza por «linux».
Modificar la configuración para arrancar en modo root.
En esta línea, debe:
Eliminar las opciones ro quiet splash $vt_handoff que corresponden a directivas de montaje de solo lectura y al modo gráfico silencioso. Reemplazarlas por rw init=/bin/bash
. Esta modificación indica al sistema que monte la partición en modo lectura-escritura (rw) e inicie directamente una shell bash como proceso inicial. Luego, presione CTRL + X
o
F10
para arrancar con la configuración modificada. En unos instantes, aparecerá un mensaje de root:
- root@(none):~# . Restablecer contraseñas desde la shell root
- En este contexto, el sistema es minimalista y no requiere contraseña para el acceso root, lo que facilita las reparaciones. Simplemente escriba: passwd usero
passwd para cambiar la contraseña root. Recuerde montar la partición del sistema en modo lectura-escritura si es necesario: mount -o remount,rw / Una vez cambiada la contraseña, reinicie el sistema normalmente con: exec /sbin/init El sistema terminará de arrancar normalmente y podrá iniciar sesión con la nueva contraseña.Usar el modo de recuperación para cambiar una contraseña
Si conoce la contraseña de root, también puede usar el modo de recuperación, accesible a través del menú de GRUB:
Seleccione
Opciones avanzadas para Ubuntu
o su equivalente en su distribución.
Elija modo de recuperación.
Acceda a la línea de comandos de root mediante el símbolo del sistema.
Cambie las contraseñas como de costumbre con
passwd
.
Este método suele ser el preferido para operaciones de mantenimiento sin una unidad USB. https://www.youtube.com/watch?v=OTuA_TQ-eHk
Resolver errores de la cadena de llaves de GNOME tras restablecer la contraseña
Es frecuente ver un mensaje de error al iniciar sesión tras restablecer la contraseña en distribuciones como Ubuntu, Fedora o Linux Mint:
- «Su contraseña no coincide con la del directorio». Este mensaje indica una discrepancia entre la contraseña de la cuenta de usuario y la utilizada para desbloquear el llavero de GNOME, la herramienta que almacena datos de Wi-Fi, SSH, VPN y otros datos confidenciales. Administrar el llavero de GNOME con Seahorse
- Para solucionar este problema, debe sincronizar o restablecer este llavero. La herramienta gráfica Seahorse le permite administrar fácilmente las contraseñas almacenadas: Inicie Seahorse desde el menú o con el comando seahorse en una terminal.En la sección «Iniciar sesión», haga clic con el botón derecho en el llavero en cuestión y seleccione «Eliminar».
- Confirme la eliminación; esto borrará todas las contraseñas guardadas (Wi-Fi, SSH, etc.).
- Cierre sesión o reinicie para que el llavero se vuelva a crear automáticamente la próxima vez que inicie sesión. Para evitar la pérdida de datos, se recomienda hacer una copia de seguridad de las contraseñas antes de esta operación, si es posible. Crear manualmente un nuevo llavero Si el llavero no se crea de nuevo automáticamente tras eliminarlo, puede hacerlo manualmente a través de Seahorse:Seleccione
Añadir contraseña
Nuevo llavero
.
Asigne un nombre al llavero y establezca una nueva contraseña, idealmente la misma que la de la cuenta de usuario para evitar futuros errores.Después, reinicie la sesión.
Estos pasos garantizan una experiencia de usuario fluida tras la recuperación de la contraseña. https://www.youtube.com/watch?v=sUp5ZKtXo1MMejores prácticas y recomendaciones para proteger su sistema Linux tras un restablecimiento
La facilidad para restablecer una contraseña en Linux, si bien es una gran ayuda, resalta la importancia de una buena política de seguridad, especialmente en distribuciones utilizadas en empresas como Red Hat, CentOS o Debian. El acceso físico a una máquina abre la puerta a una intrusión casi total si no se toman medidas adicionales.
Acceso físico seguro y el cargador de arranque Para evitar que alguien modifique la configuración de GRUB o arranque desde un Live USB, se deben implementar varias medidas de seguridad: Protección BIOS/UEFI
- : Agregue una contraseña para evitar modificaciones no autorizadas. Contraseña de GRUB : Esto evita la edición no autorizada de las opciones de arranque que permiten iniciar un shell root. Cifrado de disco con herramientas como LUKS
- o VeraCrypt : Incluso al acceder a un Live USB, los datos permanecen protegidos.Limite el acceso físico a máquinas críticas tanto como sea posible. Implemente procedimientos de gestión de copias de seguridad y acceso.
- Además de la protección física, una buena gestión de contraseñas y permisos es esencial en Linux:
- Use contraseñas complejas y distintas para las cuentas de usuario y root.
Implemente un gestor de contraseñas compatible con Linux, como nmcli, para la gestión de la red y una fácil integración. Acceda a los documentos y cambie regularmente las contraseñas confidenciales.
Instruya a los usuarios para que nunca compartan sus contraseñas en texto plano.
Utilice herramientas de notificación y monitorización.
- Algunos proyectos de código abierto ofrecen funciones avanzadas para monitorizar el estado del sistema y detectar anomalías que podrían indicar acceso no autorizado: Linux implementa un sistema estandarizado para alertar al usuario sobre fallos críticos de hardware, como fallos de la GPU (más información aquí). Se recomienda el uso de sistemas de registro con análisis en tiempo real para rastrear cambios en las cuentas de usuario. https://www.youtube.com/watch?v=PFU3sjNxZZY