Crear usuario sin acceso a la cuenta de Administrador en Linux

[notice]Desde que este post fue creado han pasado 10 años así que puede que hayan cambiado cosas.[/notice]

En este post voy a explicar como crear una cuenta de administrador en sistemas Linux, que también sirve para poder cambiar una contraseña de nuestro usuario si nos hemos olvidado de ella. Para ello debemos tener acceso físico al ordenador, debemos poder reiniciarlo y cambiar el orden de arranque de los dispositivos (cd, usb, disco duro).

 

Por un lado disponemos de un posible método que sin necesidad de iniciar el ordenador con un livecd o un sistema Linux bootable, podamos crearnos una cuenta de administrador (no siempre es posible).

De otra forma se dispone de un método el cual necesita que podamos iniciar un livecd de Linux y poder asi realzar los cambios pertinentes en los archivos del sistema ya instalado.

 

Metodo 1 (sin modificar archivos desde un sistema bootable)

Cuando instalamos una Ubuntu por ejemplo, creamos nuestra cuenta de usuario, ponemos el password y nuestra configuración… pero que pasa con root? El asistente no nos pide password para root (cosa que si hace Debian o otras distribuciones), por lo que muchos administradores de sistemas no se acuerdan o no le dan importancia a poner esta contraseña ya que si el sistema solo va a ser accesible por SSH, al no disponer de password, no se puede acceder como root, pero si es un ordenador Workstation destinado a un trabajador, este podría acceder como root, crearse una cuenta como administrador y instalar cualquier software.

En mi caso personal cuando he ido a alguna empresa que usaba Linux para alguno de sus sistemas me he encontrado con dicho fallo y por lo tanto yo hubiera podido crearme sin problemas la cuenta de administrador.

Cuando encendemos el ordenador nos sale un menú normalmente llamado grub donde podemos elegir cual de los diferentes sistemas operativos iniciar, si solo tienes Linux instalado puede que no lo veas porque salta automáticamente a iniciar el sistema. Para verlo, podemos pulsar la tecla flecha abajo para que se muestre al forzarle a elegir otra opción.

LINUX_GRUBSeleccionamos la opción de Opciones avanzadas para Ubuntu la cual en anteriores versiones se puede encontrar como Ubuntu version X (recovery) y una vez dentro seleccionamos la opción que indique recovery.

LINUX_GRUB_ADVANCED

En caso de no existir esta linea, podemos forzar nosotros el arranque en modo recovery. Posicionamos el selector encima de la primera opción de Ubuntu y pulsamos la tecla E para editar los parámetros de lanzamiento. Buscamos la linea que contenga las palabras quiet splash y añadimos detrás single.

LINUX_GRUB_EDITED

Pulsamos CTRL + X o F10 para iniciar el sistema con los parámetros que le hemos indicado.

En la siguiente pantalla nos aparece un menú de recuperación indicando que acción queremos realizar.

LINUX_RECOVERY_MODE

Seleccionamos la opción root (aunque se han lucido con la traducción de la explicación) que nos permitirá entrar en modo mantenimiento como usuario root (si este no dispone de contraseña). En caso de que el administrador se haya preocupado de poner password a root, nos la pedirá y entonces este método no funciona. Si el administrador no se ha preocupado de poner la contraseña, estamos actualmente como root y por lo tanto, podemos ejecutar comandos para crear nuestro propio usuario con permisos de administrador.

En antiguas versiones, el sistema se montaba directamente en modo escritura, por lo visto en actuales versiones el sistema se monta en modo lectura, pero podemos cambiarlo.

mount -o rw,remount /

Y luego crear usuarios con el comando useradd y passwd.

REMOUNT-USERADD

Ahora ya disponemos de nuestro usuario, pero no tiene permisos de administrador (sudoer), para ello editamos el fichero /etc/sudoers añadiendo la siguiente linea.

miusuario ALL=(ALL:ALL) ALL

SUDOERS

Guardamos el archivo, reiniciamos el sistema (reboot) , entramos con nuestro nuevo usuario y probamos de instalar o realizar cualquier acción que solo sea permitida a los administradores.

WHOAMI

 

Simplemente quiero comentar sobre este método, que no es un fallo del sistema Linux. Esto es un fallo de Canonical (empresa que hace Ubuntu) por no obligar a poner password al administrador en el menú de instalación, pero el administrador del sistema es el responsable de ponerla a mano si el instalador no se la ha pedido. Existen otras distribuciones como Debian, Centos … que en el asistente de instalación ya obligan a definir una contraseña para el usuario root.

 

Metodo 2 (modificando archivos desde sistema bootable)

Iniciamos el sistema con una versión LiveCD de cualquier sistema Linux (Ubuntu mismo), buscamos el identificador de la partición del sistema Linux que vamos a modificar y la montamos. En este caso se puede ver que es /dev/sda1

MONTANDO-PARTICION

Ahora procedemos a ejecutar chroot para cambiar que la root de nuestro livecd apunte a la root del sistema que hemos montado.

chroot /home/ubuntu/disco

Si ejecutamos el comando pwd, nos indicará que estamos en la root, pero esta root es la del disco que hemos montado, por lo tanto si ahora añadimos un usuario al fichero /etc/passwd, realmente se lo estamos añadiendo al sistema Linux que hay instalado. Podemos cambiar pues las contraseñas de los usuarios, crear nuevos usuarios, eliminar, dar permisos especiales tal y como se ha realizado en el método anterior.

LINUX_CHROOT

Una vez hayamos terminado reiniciamos el sistema y quitamos el cd bootable para que arranque el Linux que hay instalado en el ordenador.

 

¿Como evitar que un usuario pueda realizar estas acciones? 

– Definir contraseña de administrador (para el método 1)

– Evitar todo acceso físico del usuario al ordenador (internamente).

– Poner password a bios

– Deshabilitar arranque de cd, usb y unidades externas.

– Deshabilitar usb hasta que el sistema operativo haya encendido.

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.