De qué va. Hoy proteges los datos a 3 niveles: permisos (quién puede ver/modificar qué), cuotas (cuánto espacio puede usar cada uno) y cifrado (que solo abra el dueño). Lo harás con un escenario realista: un equipo donde conviven 2 usuarios y hay carpetas privadas, compartidas y cifradas.
Por qué importa. Es la diferencia entre «mi PC» y «un equipo profesional». Sin esto, cualquiera con acceso físico ve todo.
1 Preparar dos usuarios para los experimentos
- Win+I → Cuentas → Otros usuarios → Agregar cuenta.
- «No tengo la información de inicio de sesión» → «Agregar un usuario sin cuenta Microsoft».
- Nombre: alumno2 · contraseña: alumno2. (con punto al final).
- Déjalo como cuenta estándar (no admin).
sudo adduser alumno2 # Sigue las preguntas. Password: alumno2. id alumno2 ls /home # verás la carpeta /home/alumno2
2 Permisos NTFS con herencia (Windows)
mkdir C:\Equipo mkdir C:\Equipo\Publico mkdir C:\Equipo\Privado_Admin mkdir C:\Equipo\Solo_Lectura
- Clic derecho C:\Equipo → Propiedades → Seguridad.
- Verás los grupos heredados: SYSTEM, Administradores, Usuarios autenticados...
- Avanzadas → Deshabilitar herencia → «Convertir los permisos heredados en permisos explícitos».
- Edita y deja:
- SYSTEM — Control total.
- Administradores — Control total.
- Tu usuario admin — Control total.
- (quita el resto)
| Carpeta | Usuario / grupo | Permiso |
|---|---|---|
| Publico | Usuarios (locales) | Modificar |
| Privado_Admin | Solo administradores | Control total |
| Solo_Lectura | Usuarios | Lectura y ejecución |
Para añadir un usuario o grupo: Seguridad → Editar → Agregar → escribes alumno2 → Comprobar nombres → Aceptar → marcas el nivel de permiso.
icacls C:\Equipo icacls C:\Equipo\Publico icacls C:\Equipo\Privado_Admin icacls C:\Equipo\Solo_Lectura
- Cierra sesión y entra como alumno2.
- Intenta:
- Crear un archivo en C:\Equipo\Publico: ¿se puede?
- Crear un archivo en C:\Equipo\Solo_Lectura: ¿se puede?
- Abrir C:\Equipo\Privado_Admin: ¿qué pasa?
| Carpeta | Crear archivo | Abrir |
|---|---|---|
| Publico | ||
| Solo_Lectura | ||
| Privado_Admin |
Tomar posesión
Vuelve como admin. Imagina que un archivo se quedó «huérfano» porque su dueño se fue de la empresa.
REM Crea un archivo y «dáselo» a alumno2 echo "huerfano" > C:\Equipo\Privado_Admin\huerfano.txt icacls C:\Equipo\Privado_Admin\huerfano.txt /setowner alumno2 REM Verifica icacls C:\Equipo\Privado_Admin\huerfano.txt REM Como admin, recupera la posesión takeown /F C:\Equipo\Privado_Admin\huerfano.txt icacls C:\Equipo\Privado_Admin\huerfano.txt
3 Permisos en Linux: chmod simbólico y octal
cd ~
mkdir -p Equipo/{publico,privado,solo_lectura}
echo "hola publico" > Equipo/publico/hola.txt
echo "secreto privado" > Equipo/privado/secreto.txt
echo "lectura solo" > Equipo/solo_lectura/lectura.txt
ls -la Equipo/
chmod octal · cálculo en directo
Recuerda: r=4 · w=2 · x=1. Suma los que quieras para cada grupo (propietario, grupo, otros).
| Quiero... | Notación rwx | Octal | Comando |
|---|---|---|---|
| Yo todo, grupo lee y ejecuta, otros lee | rwxr-xr-- | 754 | chmod 754 f |
| Yo y mi grupo todo, otros nada | rwxrwx--- | chmod ___ f | |
| Solo yo lectura, nadie más | r-------- | ||
| Yo todo, mi grupo lee, otros nada | rwxr----- | ||
| Todos todo (peligroso) | rwxrwxrwx | ||
| Yo escribo y leo, otros nada | rw------- |
cd ~/Equipo chmod 644 publico/hola.txt chmod 600 privado/secreto.txt chmod 444 solo_lectura/lectura.txt ls -la publico/hola.txt privado/secreto.txt solo_lectura/lectura.txt
chmod simbólico
# u=user, g=group, o=others, a=all chmod u+x publico/hola.txt # añade x al usuario chmod o-r privado/secreto.txt # quita r a otros chmod g=rx solo_lectura/lectura.txt # grupo = exactamente rx chmod a-w publico/hola.txt # nadie escribe ls -la publico/hola.txt privado/secreto.txt solo_lectura/lectura.txt
chown · cambiar propietario
# Dale el archivo a alumno2 sudo chown alumno2 privado/secreto.txt ls -la privado/secreto.txt # Y el grupo también sudo chown alumno2:alumno2 privado/secreto.txt ls -la privado/secreto.txt # Recursivo: toda la carpeta y su contenido sudo chown -R $USER:$USER ~/Equipo
Vamos a cambiarnos a alumno2 y comprobar qué puede y qué no. Ojo: por defecto Ubuntu crea las carpetas personales con permisos 750, lo que significa que otros usuarios no pueden entrar. Antes de la prueba abrimos el «paso» a tu home (solo el bit x = poder atravesar la carpeta, sin permitir leer su listado).
# 1) Sustituye TU_USUARIO por tu nombre de usuario real en los comandos # (averígualo con: whoami) # 2) Abre el bit x en tu home para que alumno2 pueda atravesarla chmod o+x ~ # 3) Cámbiate a alumno2 (te pide su contraseña: alumno2.) su alumno2 # 4) Ya eres alumno2. Comprueba con: whoami # 5) Intenta leer los archivos de TU_USUARIO # Sustituye TU_USUARIO por el tuyo real: ls /home/TU_USUARIO/Equipo/publico/ cat /home/TU_USUARIO/Equipo/privado/secreto.txt # 6) Sal de la sesión de alumno2 y vuelve a la tuya exit
Si secreto.txt tiene permisos 600 (solo dueño), el cat del paso 5 debe FALLAR con un mensaje del tipo «Permission denied».
El bit x en carpetas
En archivos, x = ejecutar. En carpetas, x = poder entrar con cd. Sin x, no puedes hacer cd aunque tengas r.
mkdir test_x chmod 644 test_x # sin x cd test_x # Permission denied chmod 755 test_x # con x cd test_x # funciona cd ..
4 Listas de control de acceso (ACL) en Linux
El modelo rwx clásico se queda corto cuando quieres dar permisos a varios usuarios distintos a la vez. Las ACL lo permiten.
sudo apt install -y acl
mount | grep acl # verifica que el FS soporta ACL (ext4 sí por defecto)
Sintaxis de setfacl:
- -m = «modificar» (añadir o cambiar).
- u:alumno2:r = al USUARIO «alumno2», dale permiso «r» (lectura).
- (También existe g:grupo:rw para grupos.)
cd ~/Equipo/privado # Sin ACL no podrías dar lectura solo a un usuario extra # sin tener que abrirla a "otros". Con ACL sí: sudo setfacl -m u:alumno2:r secreto.txt # Comprueba: ls -la te muestra un + al final de los permisos # indicando que ese archivo tiene ACL extendidas ls -la secreto.txt # Para ver la ACL completa: getfacl secreto.txt
sudo setfacl -d -m u:alumno2:rwx ~/Equipo/publico
# Cualquier archivo nuevo dentro hereda esta ACL
touch ~/Equipo/publico/nuevo.txt
getfacl ~/Equipo/publico/nuevo.txt
sudo setfacl -x u:alumno2 ~/Equipo/privado/secreto.txt
getfacl ~/Equipo/privado/secreto.txt
# Borrar todas las ACL
sudo setfacl -b ~/Equipo/publico
5 Cifrado en Windows · BitLocker en disco virtual
Vamos a cifrar el disco extra E: que añadiste en la P3 (si lo eliminaste, créalo de nuevo y formatealo NTFS).
- Abre el Explorador → clic derecho en E: → Activar BitLocker.
- Elige «Usar contraseña para desbloquear la unidad» → contraseña BitLocker2026!
- Guardar la clave de recuperación → «en un archivo». Guárdala en C:\Users\<tú>\Desktop\clave_E.txt.
- «Cifrar solo el espacio usado» (más rápido para esta prueba).
- «Modo compatible» (mejor compatibilidad).
- Iniciar cifrado. Tarda unos minutos.
- Crea un archivo de prueba en E:\
- Cierra sesión o reinicia la VM.
- Al volver, al hacer doble clic en E: → pide contraseña.
- Pruébala. ¿Funciona?
- Bloquea E: (clic derecho → Bloquear unidad).
- Doble clic → cuando pida contraseña, escribe una incorrecta. «Más opciones» → «Introducir clave de recuperación».
- Abre clave_E.txt, copia los 48 dígitos, pégalos.
- Confirma que la unidad se abre.
manage-bde -status E: manage-bde -lock E: REM bloquear inmediatamente manage-bde -unlock E: -password manage-bde -off E: REM descifrar (cuidado)
6 Cifrado en Linux · LUKS en disco virtual
LUKS (Linux Unified Key Setup) es el estándar de cifrado de particiones en Linux. Vamos a cifrar /dev/sdb3 (la partición FAT32 que creaste en la P3 — la vamos a re-formatear, así que asegúrate de que no tiene datos importantes).
sudo umount /mnt/fat32_compat 2>/dev/null # Quita la línea de /etc/fstab para que no falle al arrancar sudo nano /etc/fstab # Comenta con # la línea de /dev/sdb3 y guarda
sudo apt install -y cryptsetup # Inicializa la partición como LUKS (CUIDADO: borra los datos) sudo cryptsetup luksFormat /dev/sdb3 # Confirma con YES (mayúsculas) # Contraseña: LinuxLUKS2026!
# Abrir como mapeo (se crea /dev/mapper/cripta) sudo cryptsetup open /dev/sdb3 cripta # Verifica ls -la /dev/mapper/cripta lsblk # Formatea ext4 DENTRO del contenedor sudo mkfs.ext4 -L "CIFRADO" /dev/mapper/cripta # Montar sudo mkdir -p /mnt/cifrado sudo mount /dev/mapper/cripta /mnt/cifrado df -h | grep cifrado
echo "Este archivo está dentro de LUKS" | sudo tee /mnt/cifrado/prueba.txt
sudo cat /mnt/cifrado/prueba.txt
# Cerrar (lo cifra de vuelta)
sudo umount /mnt/cifrado
sudo cryptsetup close cripta
lsblk
sudo cryptsetup open /dev/sdb3 cripta
# Pide la contraseña: LinuxLUKS2026!
sudo mount /dev/mapper/cripta /mnt/cifrado
ls /mnt/cifrado/
sudo cat /mnt/cifrado/prueba.txt
LUKS soporta hasta 8 contraseñas distintas (slots). Útil para entornos con varios admins.
sudo cryptsetup luksAddKey /dev/sdb3 # Pide la contraseña existente (LinuxLUKS2026!) # Después pide la nueva: backup2026! sudo cryptsetup luksDump /dev/sdb3 | grep -A2 "Key Slot"
7 Cuotas de disco
Cuotas en Windows
- Clic derecho en C: → Propiedades → pestaña Cuota → Mostrar configuración de cuota.
- Marca «Habilitar la administración de cuota».
- Marca «Denegar espacio en disco a usuarios que excedan el límite de cuota».
- Limitar espacio: 500 MB, nivel de advertencia: 400 MB.
- Aplicar.
- Entradas de cuota → Cuota → Nueva entrada de cuota → busca alumno2 → asigna 200 MB / 150 MB.
Cuotas en Linux
Más antiguo, pero funcional. Se usa en aulas y servidores.
sudo apt install -y quota # Editar /etc/fstab para añadir las opciones usrquota,grpquota a /home # Si /home es partición propia. Si no, a / sudo nano /etc/fstab # Cambia la línea de la raíz / o de /home: # ANTES: ... ext4 defaults 0 1 # DESPUÉS: ... ext4 defaults,usrquota,grpquota 0 1 sudo mount -o remount / # Inicializar cuotas sudo quotacheck -cum / sudo quotaon / # Asignar cuota a alumno2: soft 50M, hard 100M sudo setquota -u alumno2 51200 102400 0 0 / # Verificar sudo quota -u alumno2 sudo repquota /
8 Reto final · Escenario realista
- Una carpeta Compartida donde todos lean y escriban.
- Una carpeta Solo_Dirección a la que solo accede la directora.
- Una carpeta Solo_Lectura_Protocolos que todos leen pero solo la directora modifica.
- El disco principal cifrado con BitLocker (o LUKS si es Linux) por si roban un equipo.
- Cada usuario con un máximo de 1 GB en su carpeta.