Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Usuarios y permisos de acceso Administración de Linux

Linux es un sistema operativo de tipo multiusuario. Esto quiere decir que varias personas pueden usar la misma máquina al mismo tiempo, cada una con su propia cuenta. Por ejemplo, en una oficina o dentro de un servidor, cada usuario puede iniciar sesión con su propio nombre de usuario.

Permisos de archivos en Linux

El usuario root

Hay una cuenta especial en Linux: la del superusuario, también conocida como root.

Esta cuenta tiene control total sobre el sistema. Puede hacer cualquier cosa: crear o eliminar usuarios, cambiar configuraciones importantes del sistema e incluso borrar archivos esenciales incluso borrar archivos esenciales, lo cual puede comprometer todo el sistema.

Cuando instalamos Linux por primera vez o trabajamos sobre un servidor nuevo, el usuario root es el primero en usarse para hacer la configuración inicial.

No es recomendable usar este usuario todo el tiempo. ¿Por qué? Porque basta con un pequeño error, como borrar el archivo equivocado, y podemos dañar todo el sistema.

Por eso existe un mecanismo especial llamado sudo.

¿Qué es sudo?

La palabra sudo significa superuser do, o, en español, hacer como superusuario.

Con sudo podemos permitir que usuarios normales hagan tareas que usualmente solo están permitidas para el root, pero solo cuando sea necesario. Es como tener una llave maestra temporal: el sistema nos pide nuestra contraseña para confirmar y luego ejecuta el comando como si fuéramos el usuario root.


Supongamos que somos un usuario llamado Juan y cuando tratamos de borrar un archivo importante, obtenemos un error porque no tenemos permisos.

rm archivo_importante
# Resultado: Permiso denegado

Pero si tenemos configurado sudo en nuestro usuario, podemos ejecutar el mismo comando con sudo y el sistema nos lo permitirá (tras pedirnos la contraseña):

sudo rm archivo_importante
# El sistema pide la contraseña y luego ejecuta el comando

Esto es muy útil, por ejemplo, para tareas de mantenimiento o instalación de software, que muchas veces requieren permisos de administrador.

¿Por qué no usar root directamente?

Usar sudo es mucho más seguro que trabajar directamente como root. Aquí te damos algunas razones:

  • Podemos controlar exactamente qué puede hacer cada usuario.
  • El sistema guarda un registro de todos los comandos ejecutados con sudo.
  • Ayuda a evitar errores graves por accidente (como borrar todo el sistema).
  • Mejora la seguridad: incluso si alguien roba tu cuenta, no tendrá control total sin la contraseña de sudo.

¿Qué usuarios pueden usar sudo?

En Linux, los usuarios que pueden usar sudo generalmente están en un grupo llamado sudo o wheel (dependiendo de la distribución). Si estamos administrando la máquina, podemos agregar otros usuarios a ese grupo para que tengan acceso limitado a estas funciones de administrador.

Agregar un usuario a sudo (requiere permisos):

# Debemos estar como root o usar sudo para agregar a otro usuario al grupo de sudo
sudo usermod -aG sudo nombre_usuario

Añadir al usuario al grupo sudo le da acceso a ejecutar comandos con sudo a partir de ese momento.


Resumen

  • Linux es un sistema multiusuario, y cada cuenta tiene permisos distintos.
  • El usuario root tiene todos los permisos del sistema, pero no se recomienda usarlo directamente.
  • sudo permite a los usuarios normales ejecutar tareas como si fueran root, de forma segura y controlada.
  • Usar sudo ayuda a proteger el sistema y evitar errores graves.
  • Solo los usuarios autorizados pueden usar sudo, y se puede configurar quién tiene permiso.

Trabajo independiente

El desarrollador te ha pedido acceso para leer los registros del sistema.

1️⃣ Crea un usuario llamado tirion, que pueda leer los archivos creados por el usuario root. Este usuario debe tener permiso para ejecutar los comandos tail, head, less y more con privilegios de superusuario.

2️⃣ Inicia un servidor web como usuario root con el siguiente comando:

sudo python3 -m http.server 8000 --bind 127.0.0.1 > /tmp/log.txt

3️⃣ Inicia una sesión con la cuenta tirion y verifica que puedas abrir el archivo /tmp/log.txt y ver su contenido usando los comandos mencionados anteriormente.


Materiales adicionales

  1. Lección "Usuarios y grupos"
  2. Lección "Permisos de acceso"
  3. Edición del archivo Sudoers

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY