- Introducción
- ¿Cómo restablecer la contraseña de root?
- ¿Cómo evitar la recuperación de la contraseña de root?
- Introducción (Volver al índice General)
Linux es un sistema multiusuario en el que cada usuario tiene su contraseña y su nivel de acceso dentro del sistema. En sistemas UNIX/Linux, el root es el administrador del sistema, el usuario de mayores privilegios dentro del sistema y cuando se extravía u olvida la contraseña de root, el sistema queda sin administrador y perdemos el control total del mismo.La cuenta de root es la más importante del sistema y por cuestiones de seguridad la que mejor debemos proteger.
Si perdemos la cuenta de root, perdemos el control de nuestro sistema. Si esto ocurriese, antes de optar por reinstalar todo el sistema, os aconsejamos que leáis este artículo en el que veremos dos métodos para recuperar la contraseña de root en Linux.
Estos dos métodos son válidos en sistemas no altamente protegidos, es decir, en aquellos en los que se ha dejado la puerta abierta al sistema a través de GRUB o mediante el uso de un LiveCD.
Para finalizar el artículo, veremos algunas técnicas para reforzar la seguridad en el acceso físico al sistema como root, impidiendo la recuperación de la cuenta de root por parte de un intruso.
- ¿Cómo restablecer la contraseña de root? (Volver al índice General)
Como hemos dicho en el apartado anterior, veremos dos métodos de recuperación y empezaremos por el menos aparatoso.- Mediante el uso GRUB (Volver al índice General)
Los pasos a seguir son los siguientes:- Reiniciamos el equipo.
- Una vez que aparecen las opciones del cargador de arranque GRUB, con los botones de flecha arriba o abajo, nos situamos en la opción «*Debian GNU/Linux», y una vez situados, presionamos la letra «e» para entrar en modo edición.
- Buscamos la línea que comienza con la palabra «Linux». En esa línea, tenemos que buscar la palabra «ro» y cambiarla por «rw», y añadimos al final de la línea lo siguiente «init=/bin/bash».
- Presionamos F10 o Ctrl-x para arrancar el sistema con los cambios realizados.
- Una vez estemos en la consola, montamos el sistema de archivos raíz en modo lectura y escritura con el siguiente comando:
root@(none):/# mount -n -o remount,rw /
Veamos las opciones:
- -n, –no-mtab: Montar sin escribir en /etc/mtab. Esto es necesario, por ejemplo, cuando /etc está en un sistema de archivos de solo lectura.
- -o: Se utiliza para especificar las opciones de montaje, que en nuestro caso son:
- remount: Se utiliza para intentar remontar un sistema de ficheros ya montado. Esto se emplea comúnmente para cambiar las opciones de montaje en un sistema de ficheros, especialmente para que se pueda escribir en un sistema de ficheros que estaba en modo solo lectura.
- rw: Montar el sistema de ficheros en modo lectura y escritura.
- El siguiente paso será restablecer la contraseña de root. Para hacerlo, ejecutamos el siguiente comando:
root@(none):/# passwd root
Alternativamente, podemos cambiar la contraseña de cualquier otro usuario del sistema:
root@(none):/# passwd nombre_usuario
- Finalmente salimos de la terminal y reiniciamos el sistema con el siguiente comando:
root@(none):/# exec /sbin/init
Si todo ha salido bien, ya tenemos nueva contraseña para el root o alternativamente, para cualquier usuario del sistema.
- Mediante el uso de un LiveCD (Volver al índice General)
Nota: Las pruebas se han hecho en un PC con sistema Debian 10 instalado y hemos utilizado el LiveCD de Debian 10.
Los pasos a seguir son los siguientes:
- Arrancamos nuestro equipo con un LiveCD, LiveDVD o LiveUSB.
En ZeppelinuX hemos publicado estos artículos relacionados con la creación de un USB autoarrancable: - Seleccionamos la opción LiveCD del menu. En nuestro caso podemos optar por una de estas dos opciones:
- Una vez en el escritorio abrimos una terminal.
- Desde la terminal, nos hacemos con los privilegios de root con el siguiente comando:
user@debian:~$ sudo su
- El siguiente paso será identificar la partición de sistema de nuestro equipo, en la que tenemos instalado nuestro Linux. Para ello, ejecutamos el siguiente comando:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
root@debian:/home/user# fdisk -l Disco /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectores Modelo de disco: VMware Virtual S Unidades: sectores de 1 * 512 = 512 bytes Tamaño de sector (lógico/físico): 512 bytes / 512 bytes Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes Tipo de etiqueta de disco: dos Identificador del disco: 0x71baebc9 Disposit. Inicio Comienzo Final Sectores Tamaño Id Tipo /dev/sda1 * 2048 37750783 37748736 18G 83 Linux/dev/sda2 37752830 41940991 4188162 2G 5 Extendida /dev/sda5 37752832 41940991 4188160 2G 82 Linux swap / Solaris Disco /dev/loop0: 2 GiB, 2113794048 bytes, 4128504 sectores Unidades: sectores de 1 * 512 = 512 bytes Tamaño de sector (lógico/físico): 512 bytes / 512 bytes Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
En nuestro caso, según la línea 11 la partición de sistema de nuestro equipo es /dev/sda1.
Ahora tenemos que montar la partición de sistema para poder trabajar con ella, para lo cual, seguiremos con los siguientes comandos. - Creamos una carpeta para montar en ella la partición:
root@debian:/home/user# mkdir /mnt/temporal
- Montamos la partición de sistema en la carpeta recién creada:
root@debian:/home/user# mount /dev/sda1 /mnt/temporal
- Ejecutamos el siguiente comando para empezar a trabajar sobre este directorio:
root@debian:/home/user# chroot /mnt/temporal
Nota: chroot es el proceso por el que se cambia el directorio raíz del disco aparente a otro directorio raíz.
- El siguiente paso será restablecer la contraseña de root. Para hacerlo, ejecutamos el siguiente comando:
root@debian:/# passwd root
Alternativamente, podemos cambiar la contraseña de cualquier otro usuario del sistema:
root@debian:/# passwd nombre_usuario
- Ejecutamos exit para salir del chroot:
root@debian:/# exit
- Ejecutamos el comando umount /mnt/temporal para desmontar la partición del sistema que hemos montado:
root@debian:/home/user# umount /mnt/temporal
- Ejecutamos de nuevo exit para dejar de ser root:
root@debian:/home/user# exit exit user@debian:~$
- Finalmente, reiniciamos el ordenador
Si todo ha salido bien, ya tenemos nueva contraseña para el root o alternativamente, para cualquier usuario del sistema. - Arrancamos nuestro equipo con un LiveCD, LiveDVD o LiveUSB.
- Mediante el uso GRUB (Volver al índice General)
- ¿Cómo evitar la recuperación de la contraseña de root? (Volver al índice General)
En principio, si no hacemos algo para evitarlo, cualquiera que tenga acceso físico a nuestro equipo, podrá restablecer la contraseña de root y acceder a nuestros preciados datos.Existen varias técnicas para aumentar la seguridad de nuestro sistema. A continuación os listamos algunas de ellas:
- Habilitar la contraseña de inicio en la BIOS o UEFI del equipo para que nadie pueda iniciar sesión si no conoce dicha contraseña. El problema de esta técnica es que todas las placas madre tienen la opción de resetear la BIOS o UEFI y por lo tanto, el borrado de la contraseña.
- Reforzar la seguridad de GRUB. En ZeppelinuX hemos publicado el artículo Protegiendo GRUB2. Con esta técnica, evitaremos las siguientes situaciones:
- El acceso al menú de edición. Acordaos que en este artículo hemos visto como restaurar la contraseña del root mediante esta opción.
- El acceso a la línea de comandos de GRUB2.
- proteger todas las entradas a los distintos kernels solicitando una password.
- Proteger solo la entrada recovery mode.
- La tercera técnica que sugerimos es la de cifrar nuestro sistema con LUKS. En mi opinión, es la técnica más eficáz de las tres, al estar cifradas las particiones, no se podrá modificar la contraseña de root, ni siquiera con un LiveCD. En ZeppelinuX hemos publicados los siguientes artículos relativos al cifrado con LUKS:
- Cómo instalar Debian 10 con particiones cifradas con LUKS
- Cómo instalar Kali Linux con particiones cifradas con LUKS
- Copia de seguridad del encabezado de una partición cifrada con LUKS
- Autodestrucción de emergencia de los datos en Kali Linux (Emergency Self-Destruction of LUKS)
- Cómo añadir, cambiar o eliminar contraseña en discos cifrados con LUKS
Espero que este artículo os haya sido de utilidad. Si pensáis que podéis colaborar para mejorar este artículo, que hay algo erróneo en él o simplemente deseáis comentarlo, por favor, dejad vuestra opinión más abajo.
Configuración de privacidad y de cookies.
Deja una respuesta