En Linux, una de las tareas más importantes para cualquier administrador de sistemas es la gestión de usuarios y permisos. Ya administres un servidor, un equipo de trabajo o tu ordenador personal, entender cómo funcionan estos conceptos te permite mantener un entorno seguro, organizado y eficiente.
En este artículo verás los comandos y prácticas esenciales para trabajar con usuarios, grupos y permisos, con ejemplos claros y listos para copiar y pegar.
Índice
Creación y gestión de usuarios
Para crear un usuario con su directorio personal y asistente interactivo:
sudo adduser nombre_usuario
Si prefieres una creación mínima (sin preguntas ni home por defecto):
sudo useradd nombre_usuario
Modificar usuarios existentes
Cambia datos del usuario (comentario/“Nombre Completo”, shell, etc.):
sudo usermod -c "Nombre Completo" nombre_usuario
Bloquear o desbloquear una cuenta:
sudo usermod -L nombre_usuario # Bloquea (lock)
sudo usermod -U nombre_usuario # Desbloquea (unlock)
Gestión de grupos
Los grupos permiten organizar permisos comunes. Por ejemplo, dar acceso compartido a una carpeta de proyectos.
Crear un grupo:
sudo addgroup desarrolladores
Añadir un usuario a un grupo (sin sacarlo de los demás):
sudo usermod -aG desarrolladores nombre_usuario
Importante: el parámetro -aG
añade el grupo y evita sobrescribir pertenencias actuales.
Permisos en Linux: lectura, escritura y ejecución
Cada archivo y carpeta tiene un propietario, un grupo y una máscara de permisos para: usuario, grupo y otros.
- r = lectura (read)
- w = escritura (write)
- x = ejecución (execute)
Ver permisos
ls -l
-rw-r--r-- 1 fernando usuarios 1203 ago 18 10:00 documento.txt
En el ejemplo, el propietario puede leer y escribir; el grupo y otros, solo leer.
Cambiar permisos con chmod
Dar permiso de ejecución a un script:
chmod +x script.sh
Permisos numéricos (propietario/grupo/otros):
chmod 755 script.sh # rwx r-x r-x
chmod 644 archivo.txt # rw- r-- r--
Cambiar propietario o grupo con chown
Cambiar el propietario:
sudo chown nuevo_usuario archivo.txt
Cambiar el grupo:
sudo chown :nuevo_grupo archivo.txt
Cambiar propietario y grupo a la vez:
sudo chown nuevo_usuario:nuevo_grupo archivo.txt
Aplicar cambios de forma recursiva (en una carpeta y su contenido):
sudo chown -R nuevo_usuario:nuevo_grupo /ruta/a/carpeta
ACLs: permisos granulares (opcional)
Si necesitas mayor granularidad que el esquema tradicional, usa ACLs (Access Control Lists):
# Instalar herramientas de ACL (ejemplo en Debian/Ubuntu)
sudo apt install acl
# Ver ACLs
getfacl archivo_o_carpeta
# Asignar lectura/escritura a un usuario específico
setfacl -m u:nombre_usuario:rw archivo.txt
Buenas prácticas
- Prioriza los grupos frente a asignaciones individuales de permisos.
- Evita usar root directamente: utiliza
sudo
. - Principio de privilegios mínimos: solo los permisos imprescindibles.
- Revisión periódica de cuentas inactivas y pertenencias a grupos.
- Documenta cambios en usuarios, grupos y permisos críticos.
Conclusión
Con los comandos adduser
, useradd
, usermod
, addgroup
, chmod
y chown
, puedes administrar usuarios y permisos de forma segura y efectiva. Y si necesitas un control más fino, las ACLs te dan la flexibilidad extra.
¿Te ha sido útil? Guarda este artículo como referencia rápida para tu día a día como admin.