Cargando



Cómo habilitar o deshabilitar usuario root en Linux

Te mostramos cómo habilitar o deshabilitar una cuenta de usuario root en sistemas Linux como Ubuntu, CentOS o Debian.


dic 04 2018 17:55
Avanzado
Total de Apartados : 6
jul 08 2019 11:17

Todos los que hemos administrado y usado equipos Windows o Mac hemos necesitado habilitar o deshabilitar usuario administrador o root. Hoy toca conocer como hacerlo en alguna distro de Linux, llámese Fedora, Debian, Ubuntu, etc, sabemos la importancia y el alcance que tiene el usuario root dentro del sistema ya que este usuario cuenta con el poder de administrar completamente el Sistema Operativo sin ninguna restricción.

 

Esto es importante para nuestros roles como administradores pero puede ser una puede convertirse en algo peligroso para toda la infraestructura si es manipulado de forma errónea por personas sin autorización o sin los conocimientos necesarios.

 

Sabemos que en algunas distros de Linux un usuario no puede tener acceso a ser un usuario root , por lo cual debemos anteponer el término sudo para que el comando que estamos ejecutando pueda ser procesado de forma correcta pero algunas tareas deben ser ejecutada exclusivamente como root por seguridad y no sólo con sudo.

 

Tener un usuario root supone riesgos pues posee privilegios absolutos sobre los cambios del sistema. Hay que tener bien protegida esta cuenta, algo problemático si olvidamos nuestra contraseña. Un detalle en algunas distros de Linux es que viene deshabilitada la cuenta root por defecto, algo que da lugar la uso del comando sudo. Pero si preferimos que nuestra cuenta sea root sin tener que andar usando este comando podemos habilitarla directamente.

 

Hoy veremos cómo podemos eliminar este usuario root de nuestros entornos Linux para evitar este tipo de inconvenientes. Aunque te lo mostramos cómo hacerlo para cualquier distro, aquí tienes un ejemplo de cómo hacerlo en Ubuntu:

 

 

Para estar al día, recuerda suscribirte a nuestro canal de YouTube!
SUSCRIBETE EN YOUTUBE

 

 

También tener en cuenta que en los sistemas operativos UNIX, hablamos específicamente de Linux, podemos crear usuarios con permisos administrativos pero el usuario que tiene mas poder sobre los demás y que es de alto cuidado su manejo es el usuario root el cual se puede activar o usar sus permisos anteponiendo sudo, pero si este se maneja de la forma incorrecta sin duda que puede causar impactos negativos tanto en la estructura del sistema como en la información o servicios allí alojados.

 

El usuario root tiene acceso a todos los comandos y archivos con permisos totales tanto de lectura, escritura o ejecución y puede ser usado ejecutar cualquier tipo de tarea dentro del sistema operativo tal como para crear, actualizar o eliminar cuentas de otros usuarios, así como instalar, actualizar o eliminar paquetes de software con lo cual las consecuencias pueden ser drásticas.

 

Una buena práctica, en caso de que la información sea delicada o confidencial, es desactivar el usuario root de Linux, pero para ello debemos contar con una cuenta que posea privilegios administrativos con la cual se puede usar el comando sudo para obtener privilegios de usuario root.

 

Por ejemplo, podemos crear una cuenta así:

useradd -m -c "Solvetic" admin
passwd admin
Con el comando useradd creamos el usuario, el parámetro -m significa que vamos a crear el directorio de inicio del usuario y el parámetro -c permite especificar un comentario para este usuario.

 

Después de esto debemos añadir el usuario al grupo de administradores del sistema usando el comando usermod, con el interruptor -a el cual añade la cuenta de usuario y -G el cual especifica un grupo para agregar el usuario:

usermod -aG wheel admin (CentOS/RHEL)
usermod -aG sudo admin (Debian/Ubuntu)
Solvetic explicará las diversas formas para desactivar este usuario en Linux. (también una para activarlo).

 


1. Habilitar el usuario root en Linux


Empezamos con la forma de saber como habilitar un usuario root.
Paso 1

Si después de tener desactivado un tiempo el usuario root necesitamos volver a usarlo de nuevo, podemos habilitarlo nuevamente en el sistema usando el siguiente comando:
sudo passwd root
Con ese comando estará realizado.

 

Paso 2

En la ventana desplegada debemos establecer una contraseña para el usuario root.

 

5 habilitar desactivar usuario root linux.png

 

 

 


2. Deshabilitar usuario root y eliminar contraseña en Linux


Paso 1

Para ejecutar este proceso debemos cambiar el usuario con el cual hemos iniciado sesión en usuario root, para ello ejecutamos el comando siguiente e ingresamos nuestra contraseña de administradores.
sudo -s

2 habilitar desactivar usuario root linux.png

 

Paso 2

Una vez estemos como usuarios root debemos ejecutar el siguiente comando para eliminar la contraseña del root:
passwd --lock root

3 habilitar desactivar usuario root linux.png

 

Paso 3

Este comando nos va a permitir deshabilitar completamente el acceso al usuario root, para comprobarlo intentaremos ingresar como usuario root ingresando nuestra contraseña y veremos lo siguiente:

 

4  habilitar desactivar usuario root linux.png

 

Paso 4

Otra de las opciones de seguridad que podemos usar con el usuario root es modificar su contraseña actual usando el comando:
passwd -d root
Con este comando estaría realizado.

 

 


3. Deshabilitar usuario root desde el Shell

 

La forma más simple para deshabilitar el inicio de sesión del usuario root es cambiar su shell desde el directorio /bin/bash o /bin/bash hacia /sbin/nologin, en el archivo /etc/passwd el cual puede ser abierto con cualquier editor:

sudo nano /etc/passwd
Veremos lo siguiente:

 

 

 

Alli debemos cambiar la linea root:x:0:0:root:/root:/bin/bash por root:x:0:0:root:/root:/sbin/nologin:

 

 

Guardamos los cambios usando las teclas Ctrl + O y salimos del editor usando Ctrl + X.
De ahora en adelante, cuando el usuario root inicie sesión, se verá el mensaje "Esta cuenta no está disponible actualmente", este es el mensaje predeterminado, pero si deseamos cambiarlo y configurar un mensaje personalizado podemos hacerlo en el archivo /etc/nologin.txt.

 

 


4. Deshabilitar usuario root a través de Console Device (TTY)


Este método hace uso de un módulo PAM llamado pam_securetty el cual permite el acceso de root solo si el usuario está iniciando sesión en un TTY seguro, tal como se define en el listado en:
/etc/securetty
Con este archivo anterior será posible especificar en qué dispositivos TTY se permitirá al usuario root iniciar sesión, de modo que, si desocupamos este archivo, se impedirá el inicio de sesión en cualquier dispositivo conectado.

 

Para crear un archivo vacío, ejecutamos lo siguiente:

sudo mv /etc/securetty /etc/securetty.orig
sudo touch /etc/securetty
sudo chmod 600 /etc/securetty
Con ello estará creado.

 

 

 

 

Este método aplica solo a los administradores de pantalla como gdm, kdm y xdm) y otros servicios de red que inician un TTY., pero para otros programas como su, sudo, ssh se tendrá acceso a la cuenta root.

 

 


5. Deshabilitar inicio de root a través de SSH


Es un método común el acceder como root a través de SSH, de modo que para bloquear el inicio de sesión del usuario root, será necesario editar el archivo /etc/ssh/sshd_config:
sudo nano /etc/ssh/sshd_config
Alli debemos des-comentar la linea "PermitRootLogin" y establecer su valor en no.

 

 

 

Después de esto debemos actualizar el cambio usando alguna de las siguientes líneas:

sudo systemctl restart sshd
O
sudo service sshd restart
Con ello estará realizado.

 

 


6. Deshabilitar root a través de PAM


PAM (Pluggable Authentication Modules), es un método centralizado, modular y flexible de autenticación en sistemas Linux. PAM, en el módulo /lib/security/pam_listfile.so, permite realizar ciertas tareas para limitar los privilegios de cuentas específicas.

 

En este módulo sera posible establecer una lista de usuarios a los cuales no se les permitirá iniciar sesión a través de algunos servicios de destino tales como inicio de sesión, ssh y cualquier programa compatible con PAM.
Para lograr esto debemos acceder y editar el archivo para el servicio de destino en el directorio /etc/pam.d/ con alguna de las siguientes opciones:

sudo nano /etc/pam.d/login
O
sudo nano /etc/pam.d/sshd
Alli añadiremos lo siguiente:
auth    required       pam_listfile.so \
        onerr=succeed  item=user  sense=deny  file=/etc/ssh/deniedusers

 

Guardamos los cambios y salimos del editor.
Ahora vamos a crear el archivo plano /etc/ssh/deniedusers el cual debe contener un elemento por línea y no ser accesible por otros usuarios:

sudo nano /etc/ssh/deniedusers
Procedemos a otorgar permisos:
sudo chmod 600 /etc/ssh/deniedusers
Con alguno de estos métodos hemos deshabilitado el usuario root en Linux.

 

Hemos visto como podemos obtener esta ventaja de seguridad habiendo deshabilitado el usuario root pero debemos hacer esto si es necesario ya que si a nuestro sistema no acceden muchos usuarios o sabemos que las personas que acceden son de confianza y autorizados no es necesario ejecutar esta tarea. Si aun así lo volvemos a necesitar, ya has visto lo sencillo que es volver a habilitar este usuario root en uno de los apartados.

 

Quizás también te hayas visto en la situación de tener que deshabilitar el usuario root en Ubuntu y aquí verás una forma sencilla de realizarlo.

 

Te mostramos cómo puedes habilitar o deshabilitar un usuario root y cambiar la contraseña en Ubuntu de Linux.


¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X