Laboratorio 2: Gestión de Usuarios y Permisos
Unidad: 4 - Gestión de Usuarios y Permisos
Duración Estimada: 120 minutos
Dificultad: Intermedio
Objetivos
- Crear y gestionar usuarios en Linux
- Entender el sistema de permisos (rwx)
- Trabajar con grupos
- Usar sudo para escalación de privilegios
Requisitos Previos
- Ubuntu del Lab 1 corriendo
- Acceso SSH como “alumno”
- Permisos sudo
Pasos del Laboratorio
Paso 1: Crear Nuevos Usuarios (20 min)
BASH
# Desde terminal con sudo
sudo useradd -m -s /bin/bash carlos
sudo useradd -m -s /bin/bash maria
sudo useradd -m -s /bin/bash admin_abacom
# Verificar usuarios creados
cat /etc/passwd | grep -E "carlos|maria|admin"
# Ver ID de usuarios
id carlos
id mariaPaso 2: Establecer Contraseñas (10 min)
BASH
# Cambiar contraseña para carlos
sudo passwd carlos
# Ingresa: Carlos@123
# Cambiar para maria
sudo passwd maria
# Ingresa: Maria@123
# Cambiar para admin
sudo passwd admin_abacom
# Ingresa: Admin@123Paso 3: Crear Grupos (15 min)
BASH
# Crear grupo para desarrolladores
sudo groupadd desarrolladores
# Crear grupo para administradores
sudo groupadd sys_admins
# Agregar usuarios a grupos
sudo usermod -aG desarrolladores carlos
sudo usermod -aG desarrolladores maria
sudo usermod -aG sys_admins admin_abacom
# Verificar pertenencia a grupos
groups carlos
groups maria
groups admin_abacomPaso 4: Entender Permisos Básicos (25 min)
BASH
# Crear archivos para demostración
cd /home/alumno
echo "Contenido importante" > archivo_publico.txt
echo "Datos privados" > archivo_privado.txt
# Ver permisos actuales
ls -la archivo_*
# Cambiar permisos
chmod 755 archivo_publico.txt # rwxr-xr-x (lectura todos)
chmod 700 archivo_privado.txt # rwx------ (solo propietario)
# Verificar cambios
ls -la archivo_*
# Probar lectura como otro usuario
sudo -u carlos cat /home/alumno/archivo_publico.txt # Debería funcionar
sudo -u carlos cat /home/alumno/archivo_privado.txt # Debería fallarPaso 5: Permisos Avanzados - Directorios (20 min)
BASH
# Crear directorios
mkdir /home/alumno/proyecto_publico
mkdir /home/alumno/proyecto_privado
# Agregar archivos
echo "Proyecto A" > /home/alumno/proyecto_publico/archivo1.txt
echo "Proyecto B" > /home/alumno/proyecto_privado/archivo2.txt
# Cambiar permisos
chmod 755 /home/alumno/proyecto_publico # Otros pueden listar
chmod 700 /home/alumno/proyecto_privado # Solo propietario
# Verificar acceso
sudo -u carlos ls /home/alumno/proyecto_publico/ # OK
sudo -u carlos ls /home/alumno/proyecto_privado/ # Permission deniedPaso 6: Sudo y Escalación de Privilegios (20 min)
BASH
# Agregar usuario a sudoers
sudo usermod -aG sudo admin_abacom
# Ver entrada de sudoers
sudo visudo -c
# Ver regla para admin_abacom
# Probar sudo como admin_abacom
sudo -u admin_abacom sudo whoami # Debería mostrar "root"
# Ver histórico de sudo
sudo journalctl -u sudo -n 10
# O más simple
sudo grep COMMAND /var/log/auth.log | tail -5Paso 7: Cambiar Propietario y Grupo (15 min)
BASH
# Cambiar propietario de archivo
sudo chown carlos /home/alumno/archivo_publico.txt
# Cambiar grupo de archivo
sudo chgrp desarrolladores /home/alumno/archivo_publico.txt
# Cambiar propietario y grupo simultáneamente
sudo chown admin_abacom:sys_admins /home/alumno/proyecto_publico
# Verificar cambios
ls -la /home/alumno/archivo_publico.txt
ls -ld /home/alumno/proyecto_publicoEjercicios de Práctica Independiente
Ejercicio A: Estructura de Permisos (30 min)
- Crea un directorio llamado
/home/alumno/abacom-data - Crea 3 archivos dentro:
config.txt,logs.txt,backup.tar - Asigna permisos:
config.txt: Solo propietario puede leer/escribir (600)logs.txt: Propietario rwx, grupo rx, otros ninguno (750)backup.tar: Todos pueden leer, solo propietario escribir (644)
- Verifica con
ls -lay explica cada línea - Prueba acceso como usuario “carlos”
Ejercicio B: Gestión de Grupos (20 min)
- Crea un grupo llamado “abacom-team”
- Agrega 3 usuarios: carlos, maria, admin_abacom
- Crea un directorio
/home/alumno/equipo - Cambia propietario a “admin_abacom:abacom-team”
- Asigna permisos 770 al directorio
- Verifica que todos los miembros del grupo pueden acceder
Troubleshooting
| Problema | Solución |
|---|---|
| “Permission denied” al crear usuario | Usar sudo |
Usuario no aparece en passwd |
Esperar segundos, refrescar con cat /etc/passwd |
| No puedo ver como otro usuario | Usar sudo -u usuario comando |
| sudo pide contraseña cada vez | Normal si no estás en wheel/sudo |
Conceptos Clave
Permisos en Linux: - r (read): 4 - w (write): 2 - x (execute): 1 - rwx = 7, rw- = 6, r-x = 5, etc.
Propietario: Usuario:Grupo = PERMISOS - drwxr-xr-x alumno alumno proyecto/ - d = directorio - rwx = propietario - r-x = grupo - r-x = otros