- El usuario root en Linux es el superusuario con control absoluto sobre el sistema y un rol clave en la administración.
- Sudo y su permiten obtener privilegios de root de forma controlada, evitando iniciar sesión directamente como superusuario.
- Un uso descuidado de root puede provocar borrados críticos, fallos de arranque y graves problemas de seguridad.
- Bloquear root, usar sudo de forma granular y aplicar buenas prácticas reduce riesgos en equipos y servidores Linux.

Si usas Linux tarde o temprano te toparás con el famoso usuario root o superusuario. Es ese “todopoderoso” que puede tocar absolutamente todo en el sistema, para bien… o para liarla parda si no se tiene cuidado. Entender bien qué es, cómo se usa y cuándo conviene evitarlo es básico para cualquiera que administre un equipo o servidor con GNU/Linux.
En las distribuciones modernas se intenta que el usuario normal trabaje con permisos limitados y recurra a sudo o su solo cuando necesita privilegios elevados, como explica cómo usar root en Linux. Aun así, la cuenta root sigue existiendo y es una pieza clave en la seguridad, la administración diaria, la recuperación ante fallos y la gestión de servidores, tanto físicos como VPS o dedicados.
Qué es el usuario root en Linux y cómo encaja en el sistema
En cualquier sistema tipo Unix (Linux, BSD, macOS, etc.), el usuario root es la cuenta con máximo nivel de privilegios. Técnicamente es el usuario con UID 0, y eso significa que el kernel no le pone prácticamente ninguna restricción: puede leer, modificar y borrar cualquier archivo, arrancar y detener servicios, cambiar permisos, crear o eliminar usuarios y, en definitiva, reconfigurar por completo el sistema.
Este usuario se conoce también como superusuario, cuenta raíz o administrador. Si lo comparas con Windows, sería algo así como el Administrador, pero con incluso más libertad: el sistema “confía” en que quien use root sabe exactamente lo que hace y no pone redes de seguridad ante errores graves.
El sistema de permisos de Linux está diseñado para que los usuarios normales no puedan tocar partes críticas, ni los archivos de otros usuarios. De esta forma se reduce el riesgo de que, por un despiste o por un programa con fallos, se dañe todo el sistema. Root es la excepción: puede saltarse todas esas restricciones.
Además de las cuentas de usuario normales y de root, el sistema crea lo que se llaman usuarios del sistema o de servicio. Son cuentas muy restringidas, usadas por demonios y servicios (servidor web, base de datos, etc.) para limitar el daño si alguno de ellos se ve comprometido.
Por todo ello, el diseño de Unix parte de una idea muy clara: el administrador debe usar root solo cuando sea imprescindible. Trabajar a diario como root dispara el riesgo de romper el sistema o abrir puertas a atacantes.
Tipos de usuarios en Linux y papel del superusuario
En un sistema GNU/Linux típico podemos distinguir tres grandes categorías de cuentas, cada una con un conjunto de privilegios muy diferente y un rol bien definido dentro del sistema.
Por un lado están los usuarios normales. Son las cuentas con las que trabajamos a diario: tienen su directorio personal, pueden instalar programas en su home, ejecutar aplicaciones, guardar documentos… pero no tienen derecho a escribir en los directorios del sistema ni a modificar configuraciones críticas, salvo que se usen mecanismos de elevación como sudo.
En segundo lugar tenemos al usuario root o superusuario. Esta cuenta no está pensada para el trabajo de oficina del día a día, sino para tareas de administración: mantenimiento, instalación de software a nivel global, cambios de permisos, ajustes de seguridad, reparaciones, etc. Todo proceso que arranque root hereda sus privilegios, y ahí reside gran parte del peligro.
La tercera categoría la forman los llamados usuarios del sistema o de servicios. No representan personas, sino procesos: por ejemplo, el usuario www-data para un servidor web o mysql para la base de datos. Suelen tener permisos muy limitados, precisamente para que un fallo de seguridad en ese servicio no suponga un desastre total.
Este reparto permite aplicar el famoso principio de mínimo privilegio: cada cuenta solo tiene los permisos que realmente necesita. Así, si algo falla, el impacto se reduce. El problema viene cuando se abusa del usuario root o se le da acceso a quien no debería tenerlo.
Qué se puede hacer con root y para qué se usa realmente
Contar con acceso root implica tener el control absoluto sobre un equipo o servidor Linux. Eso, trasladado a la práctica, se traduce en una serie de tareas típicas donde el superusuario es imprescindible.
Una de las funciones más habituales es la instalación y eliminación de software a nivel de sistema. Gestores de paquetes como apt, dnf o pacman necesitan permisos de administrador para escribir en /usr, /bin, /lib y otros directorios protegidos. De ahí que los veas siempre acompañados de sudo, por ejemplo: sudo apt install vlc.
También es root quien se encarga de editar archivos de configuración del sistema, como /etc/hosts, la configuración de SSH, del servidor web, del firewall, etc. Abrir esos ficheros con un editor de texto requiere permisos elevados, de lo contrario solo podrás verlos pero no guardarlos.
Otra tarea típica que exige privilegios de superusuario es gestionar usuarios y contraseñas. Crear cuentas nuevas, cambiar claves, añadir usuarios a grupos como sudo o administradores, bloquear o desbloquear accesos… todo eso se hace desde root o usando sudo sobre comandos como useradd, usermod o passwd.
Además, el superusuario se usa para lanzar, detener y reiniciar servicios críticos, así como para apagar o reiniciar el sistema con comandos como reboot o poweroff. Igualmente, operaciones delicadas como cambiar permisos de directorios del sistema, montar particiones o modificar el gestor de arranque (GRUB) pasan por root.
Sudo y su: cómo conseguir privilegios de root de forma controlada
Iniciar sesión directamente como root no es lo más recomendable, sobre todo en equipos usados a diario o en servidores accesibles desde Internet. Para eso existen sudo y su, dos comandos clave que permiten obtener permisos de superusuario de manera temporal o controlada.
El enfoque por defecto en muchas distribuciones modernas (Ubuntu y derivadas, por ejemplo) es usar sudo: ejecutas un comando concreto con permisos de root, pero sigues siendo tu usuario normal, y una vez finaliza el comando, los privilegios elevados desaparecen.
En otros entornos más clásicos se sigue usando bastante su, que lo que hace es cambiar de identidad a otro usuario, normalmente root, manteniendo esa identidad hasta que salgas con exit. Cada enfoque tiene sus ventajas e inconvenientes, y conviene tenerlos claros para no hacer un uso abusivo del superusuario.
Cómo funciona sudo y por qué se usa tanto
El comando sudo (superuser do) permite a un usuario autorizado ejecutar una orden como si fuera root, sin necesidad de iniciar sesión como superusuario. Basta con anteponer sudo al comando que quieras lanzar, por ejemplo: sudo apt update, sudo nano /etc/hosts o sudo systemctl restart apache2.
Cuando ejecutas sudo, el sistema te pedirá la contraseña de tu propio usuario (no la de root) y comprobará en el archivo de configuración /etc/sudoers, y en los grupos como sudo o wheel, si tienes permiso para usarlo. Si estás autorizado, el comando se ejecuta con privilegios de root y después vuelves a tu estado normal.
Por comodidad, sudo recuerda la autenticación durante unos minutos (por ejemplo, 15). Eso significa que si lanzas varios comandos seguidos con sudo, no tendrás que escribir tu contraseña una y otra vez, siempre que no pase ese intervalo. Este comportamiento puede ajustarse con el parámetro timestamp_timeout en /etc/sudoers usando visudo.
Además, sudo permite una configuración muy granular: el administrador puede indicar qué usuarios o grupos pueden ejecutar qué comandos, incluso sin necesidad de introducir contraseña en ciertas tareas repetitivas pero seguras. Todo ello queda registrado en los logs del sistema, facilitando la auditoría.
Cómo usar su para cambiar al usuario root
El comando su (substitute user) sirve para cambiar de identidad a otra cuenta del sistema. Usado sin argumentos, su intenta convertirse en root pidiendo la contraseña del superusuario. A partir de ese momento, todos los comandos que lances se ejecutarán como root hasta que salgas con exit.
Si necesitas realizar varias tareas administrativas seguidas, puede resultar más cómodo arrancar una sesión interactiva de root con su o con sudo su / sudo -i, y luego encadenar todos los comandos necesarios. Pero hay que tener presente que cualquier error en esa sesión tendrá impacto total sobre el sistema.
También puedes usar su para cambiar a otro usuario distinto de root, por ejemplo: su nombre_de_usuario. En ese caso, el sistema pedirá la contraseña de ese usuario concreto y te dejará trabajando como él hasta que vuelvas a salir con exit.
En cualquier momento puedes comprobar con qué cuenta estás operando mediante comandos como whoami o id -u. Si ves root o 0, estás con privilegios máximos; si aparece tu nombre normal o un número distinto de 0, eres un usuario sin privilegios de superusuario.
La particularidad de Ubuntu: root deshabilitado y uso intensivo de sudo
Ubuntu y muchas distros basadas en ella siguen una política de seguridad bastante clara: la cuenta root no se utiliza directamente para iniciar sesión. Durante la instalación se crea un primer usuario que entra en el grupo sudo o administradores, y es esa cuenta la que se usa para todo.
En la práctica, esto significa que, tras una instalación estándar, root no tiene contraseña asignada o está bloqueado para el login directo. No puedes entrar en la sesión gráfica ni en una TTY simplemente escribiendo root y una clave, porque esa vía está cerrada de fábrica.
El objetivo es reducir la superficie de ataque: si no existe un login directo de root, es mucho más difícil para un atacante externo lanzar ataques de fuerza bruta contra esa cuenta. A cambio, todas las acciones administrativas pasan por sudo, que queda registrado y requiere autenticación del usuario que las ejecuta.
Aun así, si en un momento muy concreto necesitas habilitar root con contraseña propia, puedes hacerlo con un comando como sudo passwd root, que te permitirá asignar y cambiar la clave de la cuenta de superusuario. Eso sí, se recomienda que sea algo puntual y controlado.
Seguridad: riesgos reales de usar root sin cuidado
El usuario root es tan potente como peligroso. Linux está pensado para ser robusto y estable, pero en manos de un superusuario descuidado puede quedar inservible en segundos. Por eso se insiste tanto en extremar las precauciones al usar sudo, su o una shell de root.
Uno de los mayores peligros es la eliminación accidental de archivos o directorios esenciales. Un simple error de tipeo en un comando rm, mv o chmod puede dejar el sistema sin arrancar o sin servicios clave. Y a diferencia de la papelera de reciclaje, lo que borra root suele ser definitivo.
Otro riesgo importante es la instalación de software malicioso o no verificado con privilegios totales. Ejecutar scripts de Internet “a lo loco” con sudo o como root puede abrir la puerta a rootkits, spyware, puertas traseras o botnets que se esconden en lo más profundo del sistema.
Tampoco hay que olvidar el impacto de cambios de permisos mal planteados. Un chmod o chown mal ejecutado en /etc, /boot o en el propio GRUB puede bloquear el arranque del sistema o dejarlo en un estado inseguro en el que cualquier usuario podría hacer cosas que no debería.
Por último, cuando se trabaja como root de forma directa se pierde gran parte de la trazabilidad de las acciones. Los registros registran simplemente “root hizo esto”, pero no quién, de entre varios administradores, realizó el cambio, lo que complica auditorías y resolución de problemas.
Buenas prácticas al trabajar con privilegios de superusuario
Para mantener un sistema Linux sano y seguro es fundamental aplicar una serie de hábitos cuando uses root, sudo o su. No son complicados, pero marcan la diferencia entre una administración responsable y un desastre anunciado.
La primera regla es minimizar el tiempo que pasas con privilegios elevados. Siempre que puedas, ejecuta comandos concretos con sudo en lugar de abrir una shell de root persistente. Y cuando necesites esa shell, recuerda salir con exit tan pronto como termines lo que estabas haciendo.
También conviene no ejecutar nunca aplicaciones de escritorio ni navegadores web como root. Si un exploit aprovecha un fallo en el navegador o en un visor de documentos, obtendría directamente los privilegios de superusuario, con capacidad para arrasar con todo el sistema.
Otra práctica esencial es no lanzar scripts o comandos de fuentes dudosas con sudo sin haber revisado antes su contenido. Un vistazo rápido con un editor de texto puede salvarte de ejecutar un rm -rf encubierto o de instalar software que no quieres.
En servidores y entornos con varios administradores, es recomendable usar sudoers de forma granular: definir qué usuarios pueden ejecutar qué órdenes, limitar el uso de sudo a ciertas tareas y aprovechar que todo queda registrado en /var/log/auth.log o en el journal para poder auditar la actividad con privilegios.
Acceso root en servidores VPS y dedicados: control total y responsabilidad
Cuando contratas un servidor Cloud, VPS o dedicado, una de las cosas que más se mencionan en la publicidad es el famoso “acceso root”. No es un reclamo vacío: tener root en un servidor remoto significa poder configurarlo a tu gusto de arriba abajo, sin depender de paneles limitados ni de terceros.
Con acceso root puedes instalar y actualizar paquetes como Apache, NGINX, MySQL, Docker, Node.js y todo el stack que necesites, ajustar el firewall (iptables, nftables, CSF), reutilizar IPs, configurar DNS, VPNs o túneles SSH, programar cron jobs a nivel de sistema o monitorizar el consumo de recursos con herramientas como top, htop o iotop.
Ese nivel de poder permite optimizar el rendimiento y la seguridad del servidor de forma muy fina, adaptándolo exactamente a las necesidades de tus aplicaciones o proyectos. Pero al mismo tiempo, cualquier paso en falso puede tumbar webs, perder datos o dejar el sistema expuesto a ataques.
Por ese motivo, muchos proveedores recomiendan a los clientes menos técnicos optar por soluciones gestionadas, donde el proveedor se encarga de la administración avanzada y el cliente no necesita tocar root. Si, por el contrario, decides asumir el control total, es importante que tengas claro lo que haces o que cuentes con un equipo técnico de confianza.
Como norma general, en servidores accesibles desde Internet se aconseja deshabilitar el login directo de root por SSH, usar autenticación mediante claves públicas en lugar de contraseñas, limitar qué usuarios pueden utilizar sudo y vigilar de cerca los registros de acceso y uso de privilegios elevados.
Mostrar asteriscos al escribir la contraseña de sudo y otras mejoras de usabilidad
En muchas distribuciones, cuando introduces la contraseña en sudo no ves ni puntos ni asteriscos en pantalla. Es una medida pensada para que nadie adivine la longitud de la contraseña mediante miradas indiscretas, pero a nivel práctico puede resultar incómoda porque no sabes si el teclado está respondiendo.
La buena noticia es que sudo ofrece una opción llamada pwfeedback que permite mostrar un asterisco por cada carácter que tecleas al introducir la clave. No revela la contraseña, pero sí confirma que estás escribiendo algo.
Para activarla hay que editar la configuración de sudo con la herramienta recomendada, visudo, que abre de forma segura el archivo /etc/sudoers. Desde la terminal, usarías algo como sudo visudo, y dentro de ese archivo añadirías una línea del tipo Defaults pwfeedback.
Después de guardar y cerrar, cada vez que ejecutes sudo y el sistema te pida la contraseña, verás aparecer asteriscos mientras escribes. Si en algún momento prefieres volver al comportamiento anterior, basta con borrar esa línea de configuración y guardar de nuevo.
Este tipo de retoques son pequeños detalles de comodidad que, sin afectar realmente a la seguridad de fondo, pueden hacer más agradable el trabajo diario con sudo y root, sobre todo si administras sistemas con frecuencia.
Desactivar o bloquear la cuenta root para mejorar la seguridad
En entornos compartidos, como oficinas o servidores usados por varios administradores, puede suceder que la contraseña de root circule demasiado alegremente. Eso es un riesgo enorme: cualquiera que la conozca puede hacer y deshacer en el sistema sin apenas control.
Una forma de reducir este peligro es bloquear la cuenta root de modo que no se pueda iniciar sesión directamente con ella, ni siquiera usando su si no hay contraseña válida. En sistemas que usan sudo como mecanismo principal, los usuarios autorizados seguirán teniendo privilegios administrativos, pero ya no habrá un login directo de superusuario.
Bloquear root no borra su existencia ni sus capacidades, simplemente impide que alguien se identifique como esa cuenta de manera tradicional. En caso de necesitar volver a habilitarla, bastaría con asignarle nuevamente una contraseña usando las herramientas de administración adecuadas.
Esta estrategia es especialmente recomendable en servidores expuestos a Internet: si root no puede iniciar sesión, desaparece un objetivo obvio para los ataques de fuerza bruta a través de SSH. Lo habitual es trabajar con un usuario normal, autenticado mediante clave pública, y elevar privilegios con sudo solo cuando sea necesario.
Combinado con una política clara de quién puede usar sudo, qué puede hacer exactamente y cómo se registran sus acciones, el bloqueo de la cuenta root contribuye a un entorno mucho más controlado y seguro, sin perder capacidad de administración.
Recuperar la contraseña de root o de administración en Linux
Puede ocurrir que pierdas u olvides la contraseña con la que elevas privilegios, ya sea la de root o la de tu usuario administrador. Por suerte, la mayoría de distribuciones ofrecen mecanismos para restablecerla, aunque requieran acceso físico al equipo o arrancar desde un medio externo.
Uno de los métodos más habituales consiste en usar el propio GRUB en modo de recuperación. Al arrancar el sistema, accedes a las opciones avanzadas y eliges Recovery Mode para iniciar una consola de superusuario en un entorno reducido.
Desde ahí, lo primero será remontar la partición raíz con permisos de escritura, algo que suele hacerse con un comando del estilo mount -o rw,remount /. Una vez puedas escribir en el sistema de archivos, ya podrás lanzar passwd root o passwd nombre_usuario para asignar una nueva contraseña.
Cuando termines, conviene usar comandos como sync para asegurarte de que los cambios se han escrito en disco, y reiniciar con reboot. Al volver a arrancar, deberías poder iniciar sesión con la contraseña recién establecida y recuperar el control del sistema.
Si el sistema no arranca o el GRUB está dañado, otra opción es recurrir a un LiveCD o LiveUSB de una distribución Linux (Ubuntu, por ejemplo). Arrancas desde ese medio, abres una terminal, te conviertes en root (con sudo su en la sesión live), localizas la partición del sistema con herramientas como fdisk -l y la montas en un directorio temporal.
Después usas chroot para “entrar” en la instalación dañada como si fuera tu sistema actual, y ejecutas passwd root o passwd usuario desde ahí. En cuanto reinicies desde el disco duro, el sistema utilizará la contraseña que acabas de configurar en el entorno chroot.
Dominar el concepto de usuario root, entender cómo encajan sudo y su en el modelo de permisos de Linux y tener claras las buenas prácticas de seguridad te permite administrar tu sistema con mucha más confianza, rapidez y, sobre todo, con menos sustos. Root es una herramienta potentísima, imprescindible para instalar software, ajustar servicios, recuperar contraseñas o resucitar un sistema roto, pero solo da lo mejor de sí cuando se usa con cabeza, el menor tiempo posible y siempre sabiendo qué comando estás ejecutando y qué impacto puede tener.

