GNU/Linux >> Tutoriales Linux >  >> Linux

Permisos básicos de directorio de Linux y cómo verificarlos

Este artículo explica los tipos básicos de permisos de directorio, cómo funcionan y cómo comprobarlos.

¿Qué son los permisos de directorio y cómo se aplican?

En Linux®, un directorio es una carpeta en la que almacena archivos. Cada archivo o directorio especifica qué usuarios pueden acceder a ellos. Este artículo explica cómo establecer permisos y posiblemente anularlos.

Ejemplos de anulación:

  • Si eres un encarcelado/encarcelado usuario, solo puede acceder a los archivos o directorios a los que está encarcelado.
  • Si tiene sudo/root permisos de nivel, puede omitir los permisos de archivo o directorio.

Lista de archivos y directorios

Esta sección contiene ejemplos de operaciones de lista de Linux.

  • Enumere solo los nombres de archivos y directorios:

    # ls
    
  • Enumere los archivos y directorios con mucha más información:

    # ls -l
    # ll
    
  • Enumere los archivos y directorios y muestre todos los archivos ocultos:

    # ls -a
    

    Nota: Los archivos ocultos suelen ser archivos de configuración que el sistema oculta para mantenerlos seguros.

  • Enumere los archivos y directorios con mucha más información y con tamaños en KB o GB en lugar de bits:

    # ls -lh
    

Comprender los resultados

Cuando usas -l , cada archivo o directorio debe brindarle la siguiente información:

drwxr-xr-x. jdoe apache 3864 8 de mayo de 2021 Mis cosas
Permisos Propietario del usuario Propietario del grupo Tamaño en bits. Use -h para convertir a KB/GB Cuándo se editó por última vez Nombre

Nota de permisos :Si hay una d al principio, es un directorio, no un archivo.

Aquí hay una guía más detallada sobre cómo usar el ls comando.

Usuario, grupo, otro

Cada archivo y directorio tiene tres tipos de autorizaciones de usuario que reconoce:

  • El usuario establecido como propietario del usuario .
  • Cualquier usuario del grupo que esté configurado como Propietario del grupo .
  • Cualquiera que no esté en esas dos primeras categorías se conoce como Otro .

Un grupo común en servidores Linux es apache , para que pueda agregar a cualquiera que trabaje en los sitios web al apache grupo. Luego tienen el acceso que necesitan a todos los archivos y directorios relacionados con el sitio web.

  • Cambiar el usuario propietario de un archivo o directorio:

    # chown <user>: /MyStuff
    
  • Cambiar el propietario del grupo de un archivo o directorio:

    # chown :<group> /MyStuff
    
  • Cambiar el propietario del usuario + propietario del grupo de un archivo o directorio:

    # chown <user>:<group> /MyStuff
    
  • Cambie el propietario del usuario y el propietario del grupo de un archivo o directorio y todo lo que contiene:

    Importante: Tenga cuidado con este comando, ya que está cambiando varios archivos sin opción de deshacer.

    # chown -R <user>:<group> /MyStuff
    

Leer, escribir, ejecutar

Una vez que un archivo o directorio lo reconoce como propietario de un usuario, propietario de un grupo u otro, le asigna una combinación de los siguientes permisos:

  • r :El permiso de lectura le permite ver o leer el archivo o directorio.
  • w :El permiso de escritura le permite escribir o modificar el archivo o directorio.
  • x :El permiso de ejecución le permite ejecutar un archivo ejecutable o buscar en un directorio.

A cada autoridad de usuario se le asignan estas, en orden, donde un - representa que el permiso está ausente. Por ejemplo, la siguiente tabla explica los permisos rwxr-xr– :

rwx r-x r--
La primera parte, permisos de propietario de usuario La segunda parte, permisos de propietario del grupo La tercera parte, Otros permisos
leer, escribir, ejecutar leer, ejecutar leer
Este usuario puede hacer cualquier cosa Este usuario puede ver y ejecutar el archivo. Pero no modificarlo Este usuario solo puede mirarlo

La siguiente imagen proporciona una manera fácil de visualizar esto:

Cómo cambiar permisos con letras

  • Cambiar permisos de archivo o directorio:

    # chmod ugo+-=rwx /MyStuff
    
    • Utilice cualquier combinación de ugo para representar usuario, grupo, otro.
    • Utilice cualquier combinación de +-= para representar la adición, eliminación o cambio de los permisos actuales a los permisos especificados.
    • Utilice cualquier combinación de rwx para representar leer, escribir, ejecutar.
  • Dar leer permisos a otros :

    # chmod o+r /MyStuff
    
  • Eliminar modificar y ejecutar permisos para grupo y otros :

    # chmod go-wx /MyStuff
    

El siguiente gráfico ayuda a ilustrar este concepto:

u usuario + r leer
g grupo - w escribir
otros = x ejecutar

Nota: chmod también puede usar -R para cambiar recursivamente todos los archivos y directorios dentro de ese directorio. Como antes, proceda con precaución ya que no hay opción de deshacer.

Cómo cambiar permisos con números

  • Cambiar permisos de archivo o directorio:

    # chmod 777 /MyStuff
    

Este método usa matemáticas, donde sumas los valores de cada permiso para producir un resultado final de tres dígitos:

u usuario g grupo u otro
r leer =4
escribir =2
x ejecutar =1
  • Dar rwxr-xr– permisos:
u usuario g grupo u otro
r leer =4
escribir =2
x ejecutar =1
  4+2+1 =7 4+1 =5 4

Utilice el siguiente comando:

# chmod 754 /MyStuff

Nota: chmod también puede usar -R para cambiar recursivamente todos los archivos y directorios dentro de ese directorio. Como antes, proceda con precaución ya que no hay opción de deshacer.

Aquí hay una guía más detallada sobre cómo usar chmod

ADVERTENCIA: No use chmod 777 a menos que estés seguro, está bien. Linux, por defecto, cuenta con sólidas medidas de seguridad. Sin embargo, algunos archivos de configuración no están destinados a ser modificados por nadie. Estos son archivos fundadores que habilitan funciones básicas para la computadora o el servidor. Por ejemplo, determinan cómo activar y permitir que los usuarios inicien sesión. Si se configuran en 777, la computadora o el servidor asume que fue pirateado y apaga todo . En ese caso, no puede iniciar sesión, no puede encender el dispositivo y es irrecuperable. Esta es una manera muy fácil de romper su servidor por completo, así que use chmod con cuidado.

Cómo practicar

  • Crear un directorio:

    # mkdir /MyStuff
    

Entonces eres libre de ls -l , chown y chmod este directorio vacío tanto como quieras. Cuando haya terminado, limpie después de usted mismo.

  • Eliminar el directorio:

    # rmdir /MyStuff
    

Escenarios más avanzados

Aquí algunos escenarios para explorar:

Escenario 1

El usuario jdoe necesita acceso a un directorio específico. Sin embargo, desea mantener el propietario del usuario y los propietarios del grupo como están.

Opciones:

  • Agregar jdoe al grupo que posee el directorio. Esto da jdoe acceso a todos los demás archivos o directorios propiedad de ese grupo.
  • Otorgar más permisos a 'Otro' en ese directorio. Esto le da acceso a todos los demás usuarios en su computadora o servidor.
  • Dale a jdoe sudo permisos jdoe puede usar sudo para anular los permisos de archivos o directorios individuales. Sin embargo, 'jdoe' tendría los permisos de administrador para acceder a cualquier cosa en su computadora o servidor.

Escenario 2

Tus desarrolladores quieren cambiar /etc y todo lo que contiene a 777 permisos.

Respuesta:DILES QUE NO .

Hay muchos archivos del sistema que se estropearán y potencialmente provocarán la caída de su servidor completo . En su lugar, pregúnteles específicamente a qué archivos o directorios necesitan acceso y qué tipo de acceso necesitan.

Aquí hay una guía más detallada para comprender los permisos de archivos de Linux

Escenario 3

t s S +: Si ejecuta ls -l y vea los permisos que incluyen un t s S o+ , no continúe.

Estos son permisos de archivos y directorios más avanzados, como SUID, Sticky Bits y ACL. Son más complejos, pero se pueden anular por completo con un chmod normal. comando.

Use la pestaña Comentarios para hacer cualquier comentario o hacer preguntas. También puede iniciar una conversación con nosotros.


Linux
  1. Cómo eliminar cuentas de usuario con el directorio de inicio en Linux

  2. Cómo administrar la caducidad y el envejecimiento de la contraseña de usuario en Linux

  3. Linux chmod y chown:cómo cambiar los permisos y la propiedad de los archivos en Linux

  4. Cómo crear y eliminar un grupo de usuarios en Linux

  5. Cómo bloquear y desbloquear usuarios en Linux

Cómo verificar las vulnerabilidades Meltdown y Spectre y parchearlas en Linux

Cómo comprobar y reparar un sistema de archivos en RHEL Linux

Cómo verificar los privilegios de usuario de MySQL en Linux

Cómo verificar el tamaño de los archivos y directorios en Linux

Tipos básicos de usuarios de Linux y cómo comprobarlos

Cómo crear/agregar usuarios en Linux