Qué es el usuario root en Linux y cómo usarlo con seguridad

Última actualización: abril 11, 2026
Autor: Isaac
  • El usuario root es el superusuario de Linux con control total del sistema y sin apenas restricciones técnicas.
  • Sudo y su permiten usar privilegios de root de forma temporal o persistente, con distintos niveles de seguridad.
  • El abuso del acceso root puede provocar borrados críticos, fallos de arranque y brechas graves de seguridad.
  • Buenas prácticas con sudo, bloqueo de root y recuperación de contraseñas desde GRUB o LiveCD minimizan riesgos.

usuario root en linux

Si usas Linux a diario, tarde o temprano te vas a topar con el famoso usuario root o superusuario. Ese nombre aparece en manuales, errores de permisos, tutoriales de instalación y prácticamente en todo lo relacionado con la administración del sistema. Entender bien qué es, para qué sirve y cómo usarlo con cabeza es básico para no cargarte el sistema en dos comandos.

Aunque hoy en día casi todas las distribuciones se apoyan en sudo y su para elevar privilegios sin iniciar sesión directamente como root, la cuenta de superusuario sigue siendo el centro de la administración en GNU/Linux. Saber cómo funcionan los permisos, qué diferencia hay entre usuario normal, root y usuarios del sistema, y cómo recuperar una contraseña perdida te ahorra muchos sustos cuando algo se tuerce.

Qué es exactamente el usuario root en Linux

En cualquier sistema GNU/Linux existe una cuenta especial cuyo identificador de usuario es siempre UID 0: el usuario root. Esta cuenta tiene control total sobre el sistema: puede leer, modificar y borrar cualquier archivo, arrancar o detener servicios, instalar y eliminar software, cambiar permisos y gestionar todas las cuentas de usuario.

Si lo comparamos con otros sistemas, root sería algo así como el administrador en Windows o el superusuario en macOS, pero con todavía menos restricciones. No hay casi «¿estás seguro?» ni papelera: muchos cambios que hagas como root son inmediatos e irreversibles si te equivocas con un comando.

En el terminal, cuando trabajas con una cuenta normal verás generalmente un prompt que termina en $, mientras que si estás como root el símbolo cambia a #. Esa almohadilla es el recordatorio visual de que tienes permiso para hacerlo todo, lo bueno y lo desastroso.

Además de las cuentas de usuario normales y de root, Linux crea también una serie de usuarios del sistema o de servicio (daemons), que son cuentas sin capacidad de inicio de sesión pensadas para ejecutar servicios (servidor web, base de datos, etc.) con permisos muy limitados, de forma que un fallo en uno de esos procesos no suponga el control completo del sistema.

Tipos de usuarios y sistema de permisos en Linux

Linux se basa en un modelo clásico de seguridad en el que cada archivo y proceso pertenece a un usuario y a un grupo, y donde cada uno tiene permisos específicos de lectura, escritura y ejecución. Sobre esa base se definen dos grandes perfiles: usuarios normales y superusuario.

Los usuarios normales son las cuentas que usamos en el día a día: están pensadas para trabajar, navegar, programar o editar documentos sin tocar partes críticas del sistema. Por defecto, no pueden instalar software a nivel global, modificar ficheros de configuración bajo /etc, ni escribir en directorios como /usr, /bin, /sbin o /root.

El usuario root, en cambio, no tiene restricciones en el sistema de permisos. Puede cambiar propietarios y modos de cualquier archivo, acceder a todos los directorios, modificar la configuración de arranque, particiones, red, usuarios, etc. Es la cuenta que se usa cuando hay que meter mano «por dentro» al sistema operativo.

En muchas distribuciones basadas en Debian y Ubuntu, los usuarios normales se pueden convertir en administradores añadiéndolos al grupo sudo. Ese grupo es el que autoriza a ejecutar comandos con privilegios elevados a través de sudo. Por ejemplo, para añadir un usuario llamado softzone al grupo sudo, usaríamos:

sudo usermod -aG sudo softzone

Después de eso, al intentar ejecutar un comando de administración como sudo apt-get update, el sistema pedirá la contraseña del propio usuario softzone (no la de root), y si es correcto el usuario podrá realizar la operación con privilegios de superusuario.

Root, sudo y su: en qué se diferencian

Una fuente habitual de líos cuando empiezas con Linux es distinguir entre el usuario root y los comandos sudo y su. Root es la cuenta en sí; sudo y su son herramientas que te permiten usar (o imitar) esa cuenta.

El usuario root es una identidad permanente dentro del sistema. Tiene su directorio personal (generalmente /root), su contraseña y su propio entorno de trabajo. Iniciar sesión como root significa que todos los comandos que ejecutes tendrán privilegios máximos mientras dure la sesión.

El comando su viene de «substitute user» y se diseñó para cambiar de un usuario a otro desde la terminal. Lanzado sin argumentos, intenta cambiar precisamente al usuario root, pidiendo su contraseña. Si la autenticación es correcta, pasarás a trabajar como root hasta que salgas con exit.

El comando sudo, abreviatura de «superuser do», se pensó como alternativa más segura y granular a su. Con sudo no cambias de usuario de manera permanente, sino que ejecutas un comando concreto con privilegios de otro usuario (normalmente root), usando tu propia contraseña. Las reglas de qué puede hacer quién se definen en /etc/sudoers.

En la práctica, sudo está orientado a delegar tareas de administración sin tener que compartir la contraseña de root, mientras que su es más directo y te da acceso completo como root durante toda la sesión de terminal, ideal cuando necesitas hacer muchas operaciones encadenadas pero mucho más peligroso si te despistas.

Cuándo usar sudo y cuándo usar su

La forma más recomendada de elevar privilegios en la mayoría de distribuciones modernas es anteponer sudo al comando que quieras ejecutar. Por ejemplo, para instalar un programa con APT:

  ¿Cómo se crea un grupo en Linux?

sudo apt install gparted

En este caso el sistema te pedirá tu contraseña, comprobará que estás autorizado en sudoers y, si todo está bien, ejecutará únicamente ese comando con privilegios de root. En cuanto termine, volverás a ser un usuario normal con todas sus limitaciones.

Este modelo tiene varias ventajas: minimiza el tiempo en el que tienes privilegios máximos, deja un rastro claro en los registros (qué usuario ejecutó qué comando con sudo) y reduce las posibilidades de que un descuido derive en un destrozo serio.

El comando su, en cambio, se usa cuando necesitas trabajar durante un rato largo como superusuario, sin estar poniendo sudo delante de cada instrucción. Si ejecutas:

su

y escribes la contraseña de root, obtendrás un shell con identidad completa de root. Desde ese momento podrás ejecutar, por ejemplo, apt install gparted sin sudo, editar archivos de configuración, crear usuarios o tocar el sistema de archivos sin más freno que tus conocimientos.

También puedes usar su seguido de un nombre de usuario para cambiar de cuenta sin cerrar sesión:

su nombre_de_usuario

Es muy importante abandonar la sesión de root cuando ya no la necesites, usando el comando exit o pulsando Ctrl+D, para evitar que cualquier despiste posterior se ejecute con privilegios de superusuario.

Cómo obtener y gestionar acceso root desde la terminal

Dependiendo de la distribución y de cómo la tengas configurada, la cuenta root puede estar habilitada, bloqueada o sin contraseña. Eso afecta a cómo puedes entrar como superusuario desde el terminal.

En muchas distros clásicas, si root tiene contraseña definida, basta con usar:

su –

El guion indica que quieres un entorno de login completo de root (variables de entorno, PATH, etc.). Tras introducir la contraseña de root, el símbolo del sistema cambiará a # y estarás dentro como superusuario.

Si al intentar usar su recibes errores de autenticación aun poniendo bien la contraseña, lo más probable es que la cuenta root esté bloqueada. Esto es muy típico en Ubuntu y derivadas, que prefieren forzar el uso de sudo. Desde una cuenta con permisos sudo puedes habilitar o cambiar la contraseña de root con:

sudo passwd root

El sistema te pedirá primero la contraseña de tu usuario y después te permitirá introducir una nueva contraseña para la cuenta root. A partir de ahí, podrás iniciar sesión como root con su, salvo que la distribución tenga otras capas de protección.

Si en algún momento quieres volver a bloquear la cuenta root para que no se pueda usar para iniciar sesión ni con su ni con contraseña, puedes ejecutar:

sudo passwd -l root

Este comando bloquea la contraseña de root. El acceso mediante sudo seguirá funcionando para los usuarios incluidos en el grupo sudo o con permisos definidos en /etc/sudoers, pero no se podrá autenticar directamente como root con password.

El papel especial del usuario root en Ubuntu y derivadas

Ubuntu y muchas distribuciones basadas en ella aplican una política de seguridad algo distinta a la de otras distros como Debian en su configuración por defecto. En un sistema Ubuntu recién instalado, la cuenta root no tiene contraseña asignada y el inicio de sesión directo como root está desactivado.

Esto implica que no puedes entrar como root ni en la terminal virtual ni en la interfaz gráfica con usuario root y contraseña, porque simplemente no hay contraseña válida. La idea de fondo es reducir la exposición de la cuenta más poderosa del sistema y evitar que un ataque de fuerza bruta vaya directamente contra root.

En lugar de eso, Ubuntu fomenta el uso intensivo de sudo. Tu usuario principal se añade al grupo sudo durante la instalación, de modo que puedes ejecutar comandos privilegiados anteponiendo sudo y confirmando con tu propia contraseña. Solo quienes estén en ese grupo, o quienes se configuren explícitamente en sudoers, pueden elevar privilegios.

Si aun así decides habilitar el acceso directo de root en Ubuntu, puedes usar:

sudo passwd root

y fijar una contraseña. A partir de ese momento la cuenta root queda «activada». No obstante, es una práctica desaconsejada para el uso diario, y los desarrolladores recomiendan recurrir a sudo -i o sudo su cuando necesites un shell de root temporal.

Para volver a dejar root bloqueado y forzar de nuevo el modelo basado en sudo, se utiliza:

sudo passwd -dl root

que deshabilita y bloquea la contraseña de la cuenta de superusuario. El acceso privilegiado seguirá siendo posible con sudo para los usuarios autorizados, pero ya no existirá una contraseña utilizable de root.

Comandos habituales que requieren permisos de root

En el día a día, la mayoría de acciones de administración del sistema pasan por el usuario root, aunque no entres expresamente con esa cuenta. A través de sudo o su, root se usa para tareas como instalar o actualizar programas, tocar configuraciones o gestionar servicios.

Uno de los casos más típicos es la instalación de software. En distribuciones basadas en Debian, cualquier uso de apt para instalar, eliminar o actualizar paquetes necesita privilegios de superusuario. Por ejemplo:

sudo apt install vlc

Otro uso muy común es la edición de archivos de configuración ubicados bajo /etc o en otros directorios protegidos. Si intentas abrir /etc/hosts con un editor de texto desde un usuario normal, no podrás guardar cambios. En cambio, si lo haces con sudo:

sudo nano /etc/hosts

el editor se ejecuta con permisos de root y podrás modificar el fichero sin problemas. Lo mismo aplica a configuraciones de servicios de red, servidor web, SSH, etc.

También se necesitan privilegios de root para cambiar contraseñas de otros usuarios o de la propia cuenta root. Por ejemplo, para establecer o modificar la contraseña de root, desde una cuenta con sudo se usa:

  ¿Qué incluye LibreOffice?

sudo passwd root

Comandos potencialmente peligrosos como rm, mv o chmod sobre rutas críticas del sistema también hacen uso de root. Y para operaciones de gestión del equipo como reiniciar o apagar desde la línea de comandos, suele ser obligatorio usar sudo:

sudo reboot o sudo poweroff

Mostrar asteriscos al escribir la contraseña con sudo

Si te has fijado, cuando escribes tu contraseña al usar sudo en muchas distribuciones, no aparece ningún carácter en pantalla. Ni asteriscos, ni puntos, nada. Esto se hizo así como medida de seguridad para que un observador no pueda calcular la longitud de la contraseña con solo mirar la pantalla, aunque el beneficio real es discutible.

Algunos usuarios prefieren que al menos se muestren asteriscos para saber que el teclado está respondiendo y para poder estimar si se han equivocado al escribir. Esto se puede habilitar con una opción de sudo llamada pwfeedback, presente desde hace años aunque no siempre activada por defecto.

Para cambiar este comportamiento hay que editar la configuración de sudo usando la herramienta segura visudo, que comprueba la sintaxis antes de guardar para que no dejes sudo inservible por un error:

sudo visudo

Dentro del editor, basta con añadir una línea como la siguiente en alguna parte del archivo:

Defaults pwfeedback

Guardas los cambios, sales del editor y ya está. A partir del siguiente uso de sudo verás un asterisco por cada carácter de la contraseña que escribas. Si más adelante quieres volver al comportamiento silencioso, repite el proceso con visudo y elimina esa línea de configuración.

Riesgos reales de usar root sin cuidado

Todo este andamiaje de permisos, sudo y bloqueo de la cuenta root no está por capricho. Trabajar con privilegios de superusuario sin la debida precaución puede derivar en pérdida total de datos, sistemas inarrancables y puertas abiertas a atacantes.

Uno de los peligros más evidentes es la eliminación accidental de archivos del sistema. Ejecutar un comando como rm -rf / o rm -rf /* con sudo, o estando como root, puede borrar en cuestión de segundos buena parte del sistema de archivos, dejándolo completamente inutilizable. Incluso órdenes aparentemente inofensivas pueden ser devastadoras si se combinan con variables mal definidas, por ejemplo:

rm -rf «$directorio»/*

si $directorio está vacío, el comando puede terminar actuando sobre rutas muy distintas de las que pretendías. Y cuando eres root, prácticamente nada te detiene.

Otro riesgo importante es la instalación o ejecución de scripts y programas descargados de Internet con privilegios elevados. Un script malicioso lanzado como root tiene vía libre para instalar rootkits, keyloggers, spyware, modificar configuraciones críticas de seguridad, crear usuarios ocultos o abrir puertos persistentes para que el atacante vuelva cuando quiera.

También hay que tener mucho cuidado al cambiar permisos y propietarios de archivos sensibles. Comandos descuidados como chmod 000 /etc o jugar con permisos en /boot o en el cargador de arranque GRUB pueden dejar el sistema inarrancable. En algunos casos, recuperar la máquina requerirá usar un LiveCD o incluso servicios profesionales de recuperación.

Por eso es tan importante limitar el tiempo que pasas como root, revisar dos veces los comandos antes de pulsar Enter, y entender qué hace cada instrucción que ejecutas con sudo o dentro de una shell de superusuario.

Seguridad, trazabilidad y registro de acciones con sudo

Además de reducir los riesgos técnicos, el modelo basado en sudo tiene una ventaja clave en entornos con varios administradores o donde se exige cierto nivel de auditoría y trazabilidad de cambios: todo queda registrado.

Cada vez que un usuario ejecuta un comando con sudo, el sistema anota en ficheros como /var/log/auth.log o en el journal quién realizó la acción, cuándo y qué comando lanzó exactamente. Eso permite reconstruir la historia de cambios si algo se rompe después de una intervención.

En cambio, si todos los administradores entran siempre directamente como root, los registros solo reflejan que fue el usuario root quien ejecutó algo, sin forma fácil de saber qué persona concreta estaba detrás. En un equipo con varios técnicos, esto complica la atribución de responsabilidades y la solución de problemas.

En entornos que siguen normas como ISO 27001 o PCI DSS, se exige una trazabilidad clara de las acciones de administración. Usar sudo, definir políticas en /etc/sudoers y revisar los logs de forma periódica ayuda a cumplir esos requisitos y a detectar usos inadecuados de los privilegios elevados.

También conviene combinar sudo con otras buenas prácticas: no habilitar el inicio de sesión gráfico directo de root, desactivar el login de root por SSH salvo casos muy concretos, y configurar autenticación por claves para minimizar el riesgo de ataques de fuerza bruta contra cuentas privilegiadas.

Acceso root mediante SSH y su desactivación

En servidores accesibles por red, la tentación de habilitar el acceso directo como root por SSH es grande porque ahorra un paso, pero desde el punto de vista de seguridad suele ser una muy mala idea. Los bots que escanean Internet prueban por defecto contra la cuenta root millones de combinaciones de contraseña.

Si aun así necesitas permitir momentáneamente este acceso, el proceso habitual pasa por dos pasos: asignar o cambiar la contraseña de root y modificar la configuración del servidor SSH. Primero, desde una cuenta con sudo:

sudo passwd root

Después, editas el archivo de configuración de SSH:

sudo nano /etc/ssh/sshd_config

y buscas la directiva PermitRootLogin. Si está comentada o en no, puedes cambiarla a:

  Instalar Dual Boot con Windows y Ubuntu | Guía Paso a Paso para Principiantes

PermitRootLogin yes

Guardas los cambios y reinicias el servicio SSH para que se apliquen:

sudo systemctl restart ssh

Desde ese momento será técnicamente posible conectarse por SSH como root usando la contraseña que hayas configurado, aunque el riesgo de seguridad es considerable. En la práctica, lo recomendable es mantener PermitRootLogin no y conectarse siempre con un usuario normal para a continuación usar sudo o sudo -i.

Si en el pasado habilitaste el login remoto de root y quieres volver a desactivarlo, simplemente edita de nuevo /etc/ssh/sshd_config, fija PermitRootLogin no (o, como mucho, prohibit-password si solo quieres permitir autenticación por clave sin password) y reinicia el servicio SSH. Opcionalmente, puedes bloquear la cuenta root con:

sudo passwd -l root

para que no pueda iniciar sesión siquiera localmente con contraseña, manteniendo el modelo de administración centrado en sudo y en usuarios nominativos.

Cómo recuperar la contraseña de root si la has perdido

Perder la contraseña de root o deshabilitar la cuenta sin apuntar bien lo que has hecho es una faena, pero en la mayoría de instalaciones Linux todavía hay caminos para recuperar el acceso sin reinstalar todo desde cero.

Una primera opción es usar el propio GRUB para arrancar en un modo de recuperación. Al encender el equipo, cuando veas el menú de arranque, selecciona las Opciones avanzadas para tu sistema y elige una entrada que incluya «recovery mode». Tras cargar, el sistema te ofrecerá varias opciones; una de ellas suele ser «root» o «Drop to root shell prompt» para abrir una consola de superusuario.

Una vez en esa shell de recuperación, normalmente el sistema de archivos raíz estará montado en modo solo lectura. Para poder cambiar la contraseña debes remontar la raíz con permisos de escritura mediante:

mount -o rw,remount /

Después ya puedes establecer una nueva contraseña para la cuenta root con el comando habitual:

passwd root

Cuando el sistema te indique que la contraseña se ha actualizado correctamente, conviene sincronizar los cambios con disco y reiniciar para volver al arranque normal. Puedes hacerlo con:

sync seguido de reboot

Si por algún motivo el modo de recuperación no está disponible o no funciona, queda el recurso de arrancar con una distribución LiveCD o LiveUSB. Cualquier distro moderna sirve; muchas guías recomiendan Ubuntu por comodidad. Arrancas el equipo desde ese medio en modo «Probar» sin instalar.

Una vez en el entorno live, abres una terminal y te conviertes en superusuario del sistema live con:

sudo su

A continuación tienes que localizar la partición donde está instalado tu Linux. Puedes listar discos y particiones con:

fdisk -l

Identificada la partición correcta (por ejemplo /dev/sda1), creas un punto de montaje y montas el sistema real ahí:

mkdir /mnt/recover
mount /dev/sda1 /mnt/recover

El siguiente paso es usar chroot para «entrar» en esa instalación como si fuera el sistema activo:

chroot /mnt/recover

En ese momento, los comandos que ejecutes afectan a tu instalación original. Ya solo queda establecer de nuevo la contraseña de root con:

passwd root

y, una vez terminado, salir del chroot, desmontar la partición y reiniciar desde el disco duro para volver a tu sistema, ahora con las credenciales de root actualizadas.

Buenas prácticas al trabajar como root

Más allá de saber usar su y sudo, lo que realmente marca la diferencia es aplicar cuatro o cinco buenas costumbres cada vez que entras al territorio del superusuario. Son pequeños gestos que evitan muchos disgustos.

La primera regla de oro es minimizar el tiempo que pasas con privilegios elevados. Siempre que puedas, ejecuta solo el comando necesario con sudo, en vez de abrir una shell de root persistente. Si necesitas un rato como superusuario, usa sudo -i o sudo su, haz lo que tengas que hacer y sal con exit en cuanto acabes.

Otra recomendación importante es no usar nunca aplicaciones de escritorio que interactúen con Internet (navegador, cliente de correo, mensajería) mientras estés como root. Si una de esas aplicaciones sufriese un exploit, el atacante obtendría automáticamente control completo del sistema.

Tampoco deberías ejecutar scripts o comandos copiados de Internet a la ligera, y mucho menos como root. Antes de lanzar cualquier script con sudo, ábrelo en un editor de texto y revisa qué hace. Si no entiendes el código o ves cosas raras (descargas de sitios extraños, uso de rm masivos, cambios agresivos de permisos), mejor no lo ejecutes.

En sistemas multiusuario o servidores críticos, merece la pena afinar la configuración de /etc/sudoers con sudo visudo para que cada persona solo pueda hacer exactamente lo que necesita. En lugar de poner a todos en el grupo sudo con barra libre, puedes definir reglas específicas para que ciertos usuarios puedan reiniciar un servicio concreto, gestionar copias de seguridad o ejecutar una serie limitada de comandos.

Por último, conviene deshabilitar cualquier entrada directa de root que no sea estrictamente necesaria (sobre todo vía SSH), usar contraseñas robustas o, mejor aún, autenticación por claves públicas, y vigilar los registros de acceso y de sudo para detectar usos sospechosos de los privilegios de administración.

Entender qué es el usuario root, cómo se relaciona con sudo y su, y qué consecuencias reales puede tener un comando mal escrito con privilegios de superusuario, es lo que marca la frontera entre manejar Linux con soltura o ir siempre con miedo a romper algo; con un poco de respeto por la cuenta root, usando sudo con cabeza y apoyándote en herramientas como visudo, GRUB o un LiveCD cuando toca hacer cirugía de urgencia, puedes administrar tu sistema GNU/Linux con mucha flexibilidad sin sacrificar seguridad.

Artículo relacionado:
¿Qué es permiso sudo?