Configuración de Permisos de Archivos y Carpetas en Servidores Linux

Cuando gestionamos un servidor NAS basado en Linux o un sistema operativo como Debian o Ubuntu con servicios para acceder a archivos en red local, es crucial controlar los permisos de lectura, escritura y ejecución de los archivos y carpetas compartidos. Al compartir a través de Samba o FTP, donde la autenticación puede ser con un usuario sin privilegios, organizar usuarios y grupos correctamente se vuelve esencial.

¿Por qué cambiar los permisos?

En entornos multiusuario, la revisión periódica de los permisos es crucial para evitar modificaciones no deseadas. En servidores NAS como QNAP o sistemas operativos basados en Linux, el comando chmod desempeña un papel vital para ajustar permisos y garantizar que solo los usuarios autorizados accedan a archivos compartidos.

El comando chmod

chmod es la herramienta clave para cambiar permisos en archivos y carpetas en sistemas operativos Linux y Unix. Su sintaxis básica es: 

chmod [modificadores] permisos fichero/directorio

Se pueden usar modificadores como -R (recursivo) y opciones como -v (verbose) para aplicar cambios a múltiples archivos de manera eficiente.

Interpretar los permisos

Los permisos en Linux se dividen en lectura (r), escritura (w), y ejecución (x). Estos se asignan a tres niveles: propietario (u), grupo (g), y otros (o). La notación simbólica y octal se utilizan para cambiar los permisos.

Cambiar permisos con chmod

chmod permite asignar o quitar permisos utilizando letras o números octales. Por ejemplo:

chmod ugo+rwx archivoDePrueba   # Dar permisos totales a todos
chmod o-rwx archivoDePrueba    # Quitar permisos a otros usuarios
chmod 700 archivoDePrueba      # Permisos totales al propietario y ninguno a grupo y otros
chmod 666 archivoDePrueba      # Lectura y escritura para todos los roles

Permisos más complejos

Para aumentar la seguridad, se pueden implementar estrategias como el principio de privilegio mínimo, Listas de Control de Acceso (ACL), y el uso de grupos de usuarios. Monitorizar y auditar cambios en permisos es crucial para detectar posibles infracciones de seguridad.

Otros comandos útiles

  • chown: Cambia el propietario de un archivo o directorio.

    sudo chown usuario ruta/fichero
    
  • chgrp: Cambia el grupo propietario de un archivo o directorio.

    sudo chgrp grupo ruta/archivo
    

Ambos comandos admiten la opción -R para cambios recursivos y son esenciales para gestionar eficientemente los propietarios y grupos en Linux.

Linux vs Windows

En el debate Linux vs Windows, las diferencias en la gestión de permisos son notables. En Linux, los permisos se establecen individualmente, mientras que en Windows, se aplican a toda la carpeta. La cuenta de usuario root en Linux tiene acceso total, a diferencia de la cuenta de Administrador en Windows, que requiere precauciones.

En resumen, comprender y aplicar correctamente los permisos en un entorno Linux es esencial para garantizar la seguridad y el acceso adecuado a los recursos compartidos en servidores. Con el uso adecuado de comandos como chmod, chown, y chgrp, los administradores pueden mantener un control preciso sobre los archivos y carpetas en sus sistemas.

Comprender y aplicar correctamente los permisos en un entorno Linux es esencial para garantizar la seguridad y el acceso adecuado a los recursos compartidos en servidores.

 Carlos Fierro . 15 de noviembre de 2023