educación, informática y demás

Sistemas informáticos

Práctica sistemas informáticos 01.05 – Restaurando contraseña

Punto de partida

Vamos a seguir trabajando con la máquina virtual SSOO – Sistema Dual 02 – P01, que es la que todavía mantiene GNU/Linux Xubuntu 20.04.

Enunciado

Supongamos por un momento que hemos perdido la contraseña del usuario que utilizamos para administrar nuestro sistema GNU/Linux. En nuestro caso práctico esta cuenta es la de alumno.

Sabemos que podemos cambiar la contraseña de cualquier usuario ejecutando el comando passwd como root, pero no tenemos la contraseña ni siquiera para iniciar sesión como alumno. Ningún otro usuario del sistema puede ejecutar comandos como root en nuestro sistema y la cuenta de root no permite iniciar sesión por la configuración que tenemos en nuestro sistema.

Sabemos que las contraseñas se guardan en el fichero /etc/shadow y que podríamos editarlo directamente para quitar la contraseña de cualquier usuario del sistema, pero seguimos teniendo el problema de que solo root puede editar este fichero y no tenemos ni la contraseña de root, que está deshabilitada, ni la del único usuario con permisos de ejecución como root.

¿Cómo solucionarías el problema?

Se pide que limpies la contraseña del usuario alumno. Después, que le des una contraseña al usuario alumno, que será ClaveRoot#20.

Ayuda: Quizá estaría bien utilizar un LiveCD de GNU/Linux para poder acceder a los ficheros del sistema operativo instalado en nuestro sistema.

Solución

Vamos a necesitar acceder al sistema de ficheros para modificar el contenido del fichero que almacena las contraseñas de los usuarios del sistema. Para ello utilizaremos un liveCD que nos permita acceder a dicho fichero que es /etc/shadow.

En esta ocasión, para cambiar y sobre todo dar una visión diferente a la que tenemos de nuestro sistema operativo instalado (con fines didácticos) vamos a utilizar otro liveCD distinto: System Rescue CD.

Podríamos haber utilizado una versión de Debian en LiveCD. Da igual el LiveCD que utilicemos, siempre y cuando sea un LiveCD que me permita acceder a los datos almacenados en el sistema de ficheros principal o raíz de mi XUbuntu 20.04.

En este LiveCD por defecto estamos trabajando directamente con el usuario root. Por tanto no haría falta ejecutar el comando sudo, puesto que todos los comandos que ejecutemos se ejecutarán como root.

Cuidado, sabemos que el fichero que almacena las contraseñas del sistema está en /etc/shadow. No obstante, si echamos un vistazo al fichero /etc/shadow, ¡no aparece el usuario alumno!.

Esto es así, puesto que el fichero /etc/shadow es el fichero de contraseñas de este sistema operativo en liveCD, System RescueCD. Nosotros tenemos que acceder al fichero de contraseñas que está almacenado en partición o sistema de ficheros dónde instalamos GNU/Linux Xubuntu 20.04.

Lo primero que vamos a hacer es comprobar que particiones tenemos en los discos duros del sistema.

Tiene toda la pinta de ser /dev/sda3, de hecho ya lo sabemos por todos los casos prácticos que hemos hecho hasta ahora. No obstante, por probar, vamos a montar /dev/sda5 y la descartamos si no es la que buscamos.

Creamos el punto de montaje, un directorio llamado hd, y después motamos la partición /dev/sda5 en el punto de montaje. Para terminar comprobamos si su contenido es el del sistema de ficheros principal o ráiz de nuestro sistema operativo GNU/Linux xbuntu 20.04.

Es la partición que contiene el directorio /home. Esta no es, así que la desmontamos y repetimos el proceso pero ahora con /dev/sda3.

Ahora vamos a echar un vistazo al fichero shadow que estará guardado en el directorio etc que está dentro de hd, puesto que hemos montado el sistema de ficheros dentro del directorio hd.

Vamos a utilizar grep para filtrar.

Importante! estamos usando rutas relativas para hacer referencia al directorio hd que está en nuestro directorio actual y, a partir de ese directorio, podemos la ruta del fichero al que queramos acceder dentro del directorio ráiz del sistema GNU/Linux al que estamos accediendo.

Editamos el fichero y limpiamos la contraseña del usuario dejandola vacía

Ahora reiniciamos y a ver que pasa…

Debería haber quitado el LiveCD, pero no me ha dado tiempo. Menos mal que en el menú de SystemRescue nos permite lanzar el sistema operativo existente.

Ahora tenemos que establecer la contraseña del usuario alumno una vez hayamos iniciado sesión sin contraseña.

Vamos a ver si se ha cambiado la contraseña en el fichero de contraseñas del sistema.

Dejar una respuesta