Gestión de permisos del sistema de archivos de Linux

1. Control de autoridad RWX-UGO

El control de permisos RWX de Linux también se llama DAC (Control de acceso discrecional). El mecanismo DAC significa que el propietario de un objeto puede modificar u otorgar los permisos correspondientes al objeto a voluntad. Desde la perspectiva del sujeto y el objeto, significa que el sujeto tiene derecho a determinar qué tipo de autoridad de acceso tiene él y otros sujetos al objeto .Por ejemplo, un usuario A en Linux puede establecer libremente UGO (es decir, este usuario, este grupo de usuarios, otros usuarios) los permisos RWX (es decir, leer, escribir, ejecutar) del archivo.

1). Objeto de permiso

  • propietario:Propietario del archivo
  • grupo:grupo de usuario
  • otros:No el propietario del archivo, ni alguien fuera del grupo de usuarios, otros

2). Tipo de permiso

rwx    rwx    rwx   
属主   属组    其他人 
例:
drwxr-xr-x.  2 root root   4096 Mar  1 05:09 ssl
  • r (Leer leer): Para documentos, Tiene permiso para leer el contenido del archivo; Para el catalogo, Tiene permiso para navegar por el directorio.

  • w (Escribe escribe) Para documentos, Tiene derecho a agregar, modificar y eliminar el contenido de los archivos;Para el catalogoTiene la autoridad para crear, eliminar, modificar y mover archivos en el directorio.

  • X (eXecute, ejecutar):Para documentos, Tiene la autoridad para ejecutar el archivo;Para el catalogo, El usuario tiene permiso para ingresar al directorio. (Puede acceder a este directorio y puede utilizar ls -l para obtener la información detallada de los atributos del archivo.)

  • Un archivo solo tiene permiso de lectura. ¿El propietario del archivo puede escribir en este archivo?

[root@localhost tmp]# ls -l
total 0
-r--r--r--. 1 root root 0 Mar 13 19:16 file
[root@localhost tmp]# vim file
[root@localhost tmp]# cat file
hello world!(这是我写入的内容)
  • Conclusión: el propietario del archivo debe poder escribir en el archivo.
    Por ejemplo, root puede escribir obligatoriamente shadow. Porque el dueño de la sombra es root

    Inserte la descripción de la imagen aquí

2. Lógica de juicio de permisos de archivo

  • Borrar archivos:CorrectoDirectorio de archivosTenerWPermiso para
    determinar la identidad del usuario, en qué identidad el usuario elimina el archivo,propietario—> grupo—> otros
    SiPropietario del directorio: Bits de permiso de directorioLos tres de la izquierda necesitan tener permiso w, Si hay éxito, si no hay fallo,
    si no es el propietario del directorio, siPertenecer al grupo, Bits de permiso de directorioTres de ustedes necesitan tener un permiso w, Si hay éxito, si no hay fracaso,
    si es asíotra gente, En los bits de permisos del directorioLos tres dígitos correctos necesitan w permiso, Triunfar si lo hay, fallar si no

  • El acceso de solo lectura al directorio no permite que cd ingrese al directorio, Debe tenerAutoridad de ejecuciónEntrar

  • Solo ejecutar permisoSolo puede ingresar al directorio,No puedo ver el contenido del directorio,desearQuiere ver el nombre del archivo y el nombre del directorio en el directorio,necesitarLeer permiso

  • El bit w del directorio no está configurado, incluso si tiene el permiso w de un archivo en el directorio, no puede escribir el archivo

3. Comandos de gestión de privilegios

  • 1) comando .chmod

(El comando chmod se usa para cambiar los permisos de acceso de los archivos o directorios del sistema de Linux y usarlo para controlar los permisos de acceso de archivos o directorios ) .

tu Propietario
gramo Pertenecer al grupo
O otro
un Todas
-R Modificación recursiva

1.Notación potenciada

实例:
[root@localhost tmp]# ls -l
total 0
-rw-r--r--. 1 root root 0 Mar 13 05:21 file
[root@localhost tmp]# chmod u=rwx file
[root@localhost tmp]# ls -l
total 0
-rwxr--r--. 1 root root 0 Mar 13 05:21 file
[root@localhost tmp]# chmod g=rwx file
[root@localhost tmp]# chmod o=rwx file
[root@localhost tmp]# ls -l
total 0
-rwxrwxrwx. 1 root root 0 Mar 13 05:21 file
[root@localhost tmp]# chmod a=x file
[root@localhost tmp]# ls -l
total 0
---x--x--x. 1 root root 0 Mar 13 05:21 file
  • Con qué usuario inicia sesión, entonces el archivo o directorio que cree se convertirá automáticamente en el propietario y grupo del archivo
    2.Notación de autorización
实例:
[root@localhost tmp]# ls -l
total 0
-rw-r--r--. 1 root root 0 Mar 13 05:24 file
[root@localhost tmp]# chmod a+x file
[root@localhost tmp]# ls -l
total 0
-rwxr-xr-x. 1 root root 0 Mar 13 05:24 file
[root@localhost tmp]# chmod a-r file(可以加也可以减)
[root@localhost tmp]# ls -l
total 0
--wx--x--x. 1 root root 0 Mar 13 05:24 file
u,g,o同上方法
  • 2). Comando chown

(chown cambia el propietario del archivo especificado al usuario o grupo especificado, Usuario puede ser nombre de usuario o ID de usuario; Grupo puede ser nombre de grupo o ID de grupo.Los administradores del sistema a menudo usan el comando chown para otorgar permiso al usuario para usar el archivo después de copiar un archivo en el directorio de otro usuario.)
Función de comando: Cambie el propietario y el grupo del archivo mediante chown.Al cambiar el propietario o el grupo de un archivo, puede utilizar la configuración de nombre de usuario e ID de usuario. Los usuarios comunes no pueden cambiar sus archivos a otros propietarios.La autoridad de operación es generalmente el administrador.

uso:chown [opción] ... [propietario] [: [grupo]] archivo ...

-R Procesar todos los archivos en el directorio especificado y sus subdirectorios (modificación recursiva)
实例:
[root@localhost ~]# groupadd kobi
[root@localhost tmp]# ls -l
total 0
-rw-r--r--. 1 root root 0 Mar 13 05:21 file
[root@localhost tmp]# chown root:kobi file
[root@localhost tmp]# ll
total 0
--wx--x--x. 1 root kobi 0 Mar 13 05:24 file
[root@localhost tmp]# chown root:jerry file
[root@localhost tmp]# ll
total 0
--wx--x--x. 1 root jerry 0 Mar 13 05:24 file
[root@localhost tmp]# chown jerry file
[root@localhost tmp]# ll
total 0
--wx--x--x. 1 jerry jerry 0 Mar 13 05:24 file(jerry是用户不是组)
  • 3) comando .chgrp

(Este comando cambia el grupo de usuarios al que pertenece el archivo especificado, Solo el administrador puede modificar el propietario y el grupo del archivo)
Uso:chgrp [opciones] [grupo] [archivo]

实例:
[root@localhost tmp]# ll
total 0
--wx--x--x. 1 jerry jerry 0 Mar 13 05:24 file
[root@localhost tmp]# chgrp root file
[root@localhost tmp]# ll
total 0
--wx--x--x. 1 jerry root 0 Mar 13 05:24 file

Cuatro. El contexto de seguridad del proceso

(El modelo de aplicación de proceso de acceso a archivos. ¿Cuál es el permiso de acceso del usuario que inició el proceso al archivo, entonces cuál es el permiso de acceso del proceso al archivo?

Si el propietario del proceso es el mismo que el propietario del archivo, si son el mismo, se aplica la autoridad de propietario.
De lo contrario, verifique si el propietario del proceso y el grupo de pertenencia del archivo son el mismo, si son el mismo, se aplican los permisos del grupo de pertenencia.
De lo contrario, use otros permisos.

Ejecute un archivo en un proceso, dependiendo de si el usuario tiene permisos xy permisos ejecutables en el archivo

五 .ACL (Lista de control de acceso)

Lista de control de acceso

ACL le permite establecer permisos de acceso para cualquier archivo / directorio a cualquier usuario o grupo de usuarios.

  • Establecer permisos para usuarios

  • Establecer permisos para grupos de usuarios

  • Los archivos o subdirectorios secundarios heredan los permisos del directorio principal

  • 1) comando .setfacl

( Utilice el comando setfacl para controlar los permisos de lectura / escritura / ejecución para un solo usuario o grupo de usuarios, un solo archivo o directorio )

-metro Configurar ACL
-X Quitar parámetros de ACL
-segundo Eliminar todos los permisos de ACL
-R Configuración recursiva
  • 2) comando .getfacl

-R Configuración recursiva

Ejemplo 1: Establecer el permiso rwx del usuario curry para archivar el archivo, curry no pertenece al archivo principal y al grupo, curry es otro, ¿cómo hacerlo?
Inserte la descripción de la imagen aquí
Cuando se agrega la ACL de permisos extendidos al usuario de boboyu, debajo de su usuario, puede ver que hay un signo + detrás de los permisos de otros usuarios, y puede escribir el archivo, y el archivo todavía pertenece al usuario root y al grupo raíz.
Inserte la descripción de la imagen aquí
Cuando se cambia a Este archivo no se puede escribir bajo el usuario kd, este archivo
Inserte la descripción de la imagen aquí
se puede escribir bajo el usuario curry
Inserte la descripción de la imagen aquí

Ejemplo 2. Agregar permisos al directorio
tiene el parámetro d:
Inserte la descripción de la imagen aquí

6. Máscara de permiso

El permiso predeterminado de umask (022 por defecto )
es 666 para archivos y 777 para directorios.

  • Permisos de archivo predeterminados: Si hay permiso de ejecución en el resultado de la resta, agregue
    1666-umask 644
  • Permisos predeterminados del directorio: 777-umask 755 El
    método de cálculo científico de permisos:

1. Convierta los permisos predeterminados (directorio 777, archivo 666) y los valores de umask a dígitos binarios.
2. Invierta umask.
3. Agregue los permisos predeterminados y umask al valor invertido.
4. Agregue el valor binario resultante. Convertir octal , es decir, permiso

Ejemplo: Umask

6   6   6           umask   0   3    3

110 110 110               000 011  011 # 转成2进制

                          111 100  100 # umask取反的值

110 110 110   
与             #默认权限和umask取反后的值做与运算
111 100 100    # umask取反的值

110  100  100
6    4    4     #转成8进制

7. Permisos especiales para archivos

SUID SGID SBIT
(cuando el bit de permiso original tiene permiso de ejecución, use letras minúsculas, de lo contrario use letras mayúsculas )

  • 1) .SUID

El permiso es que s S aparezca en la posición x del propietario

1. Solo es válido para programas binarios.
2. El ejecutor necesita tener permisos de ejecución para el programa.
3. Solo es válido en el proceso de ejecución del programa. Programa -----> proceso
4. El ejecutor tener la autoridad del propietario del programa.

SUR Ejemplo:
Inserte la descripción de la imagen aquí

  • 2.) SGID

El permiso está en la posición x del grupo, aparece S
1. Efectivo para programas binarios
2. El ejecutor necesita tener permisos ejecutables para el programa
3. El ejecutor tendrá los permisos del grupo que pertenece al programa
4. SGID actúa principalmente sobre el directorio: al crear un nuevo archivo en este directorio, el grupo de género del nuevo archivo es el mismo que el grupo de género del directorio

SGID Ejemplo:

Inserte la descripción de la imagen aquí

  • 3) .SBIT

Para otros, / tmp, t T aparece en la posición de permiso de ejecución
1. Solo es válido para el directorio
2. Solo el usuario y la raíz tienen la autoridad para eliminar archivos o directorios creados por el usuario en este directorio

SBIT Ejemplo:
Inserte la descripción de la imagen aquí

8. Adjunto

  • Agregue permisos extendidos a todos los archivos en el directorio: Setfacl -R -mu: boboyu: rw-testdirectory / ( -R debe estar delante de -m, lo que significa que todos los archivos del directorio )

  • Quitar permisos individuales: Setfacl -xu: curry / tmp / archivo

  • Eliminar todos los permisos de acl: Setfacl -b / tmp / archivo

Nueve. Atributos ocultos

1) .lsattr

Bajo Linux, podemos usar el comando stat para ver la información de atributos relevante del archivo. Además de estos atributos, hay algunos atributos ocultos del archivo en Linux
. Podemos usar el comando lsattr para ver

Nota: El atributo oculto del archivo es solosistema de archivos ext2 / ext3 / ext4Completos y efectivos, otros sistemas de archivos solo pueden admitir atributos ocultos parciales o pueden no
admitir atributos ocultos en absoluto.

un Muestra información de atributos de todos los archivos, incluidos los que comienzan con.
R Muestra de forma recursiva los atributos de todos los subdirectorios y archivos del directorio.
re Muestra los atributos del directorio, no los atributos de los archivos en el directorio

2) .chattr

Formato: chattr ± = [ai]

un Solo puede agregar datos al archivo, no eliminarlo. Se usa principalmente para la seguridad del archivo de registro del servidor. Solo el root puede configurarlo.
yo Los archivos no se pueden eliminar, cambiar de nombre, establecer relaciones de vínculo físico y no se pueden escribir ni agregar (ni siquiera para usuarios raíz). Solo se puede configurar la raíz

Supongo que te gusta

Origin blog.csdn.net/qq_44944641/article/details/104827406
Recomendado
Clasificación