===== Permisos en Linux =====
Los permisos son del tipo x xxx xxx xxx . Que se corresponde con tipo archivo, permisos usuario, permisos grupo, resto
La primera posición indica el tipo de archivo que puede ser:
* - -> archivo normal
* b -> tipo bloque
* c -> tipo caracter
* d -> directorio
* l -> enlace
* p -> conexión
* s -> conector
Los permisos para el resto de grupos son:
* r -> lectura
* w -> escritura
* x -> ejecución
* t -> mantienen el ejecutable en memoria
* s -> suid/ssid
* i ->bloque de archivos
Para establecer los permisos en linux usuamos los siguientes comandos
* chmod
* chown usuario.grupo nombre_archivo
* getfacl
* setfacl
==== Chmod ====
El comando chmod (change mode) sirve para gestionar los permisos de los archivos o directorios del sistema. Los permisos que podemos dar on R lectura, W escritura y X ejecución
Los permisos los podemos asignar al owner (propietario), group (grupo) y others (Otros)
Las sintaxis de chmod es chmod [opciones] permisos archivo/directorio/s
Los permisos se pueden indicar de dos maneras, por medio de una sintaxis en números octales (base 8) o por medio de caracteres.
* El primer dígito corresponde a los permisos del usuario
* El segundo dígito a los del grupo
* El tercer dígito a los del resto de usuarios
==== Chown ====
El comando chown (change owner) en sistemas Linux y Unix permite cambiar el propietario y el grupo de archivos o directorios
Para cambiar los permisos a un archivo chown usuario:grupo archivo.txt
Para cambiar recursivamente los permisos a un directorio
chown -R usuario:grupo /ruta/del/directorio
===== Ejemplos de permisos =====
* Archivos sensibles (configuraciones, credenciales, etc.):
chmod 600 -> Sólo el propietario puede leer y escribir
* Archivos públicos:
chmod 644 index.html-> Todos pueden leer, pero solo el propietario puede escribir
* Directorios
chmod 755 /var/www/html-> Permite lectura y ejecución para todos, pero solo el dueño puede modificar
=== Problemas con permisos ===
Error «Permission denied» al ejecutar scripts:
Asegura permisos de ejecución con:chmod +x script.sh
Error «403 Forbidden» en Apache/Nginx:
Asegúrate de que los archivos tengan permiso 644 y los directorios 755.
Verifica que el usuario del servidor web (www-data, apache, nginx) tengan acceso.sudo chown -R www-data:www-data /var/www/html