GNU/Linux >> Tutoriales Linux >  >> Linux

Preguntas de la entrevista de Linux:permisos especiales (SUID, SGID y sticky bit)

Hay dos permisos especiales que se pueden establecer en archivos ejecutables:Establecer ID de usuario (setuid) y Establecer ID de grupo (sgid). Estos permisos permiten que el archivo que se está ejecutando se ejecute con los privilegios del propietario o del grupo. De manera similar, hay dos permisos especiales para directorios:el bit sticky y el bit setgid. A continuación, se encuentran algunas de las preguntas de entrevistas de Linux más frecuentes sobre permisos especiales como SUID, SGID y sticky bit.

¿Qué es Establecer ID de usuario (setuid)?

SUID es un permiso especial asignado a un archivo. Estos permisos permiten que el archivo que se está ejecutando se ejecute con los privilegios del propietario. Por ejemplo, si un archivo es propiedad del usuario raíz y tiene establecido el bit setuid, no importa quién haya ejecutado el archivo, siempre se ejecutará con privilegios de usuario raíz.

¿Cómo configurar el bit SUID en un archivo?

Debe ser el propietario del archivo o el usuario root para configurar el bit setuid. Ejecute el siguiente comando para configurar el bit setuid:

# chmod u+s file1

Ver los permisos usando el comando ls -l:

# ls -l file1
-rwSrw-r-- 1 user1 user1 0 2017-10-29 21:41 file1

Tenga en cuenta la S mayúscula . Esto significa que no hay permisos de ejecución. Ejecute el siguiente comando para agregar permisos de ejecución al archivo file1, teniendo en cuenta las s minúsculas .

# chmod u+x file1
# ls -l file1
-rwsrw-r-- 1 user1 user1 0 2017-10-29 21:41 file1

Tenga en cuenta las minúsculas s. Esto significa que hay permisos de ejecución.

Alternativamente, puede configurar el bit setuid utilizando el método numérico anteponiendo un 4 al modo. Por ejemplo, para configurar el bit setuid, permisos de lectura, escritura y ejecución para el propietario del archivo file1, ejecute el siguiente comando:

# chmod 4700 file1

¿Qué es Establecer ID de grupo (setgid) para archivos?

Cuando se establece el bit Establecer ID de grupo, el ejecutable se ejecuta con la autorización del grupo. Por ejemplo, si un archivo era propiedad del grupo de usuarios, independientemente de quién lo ejecutara, siempre se ejecutaría con la autoridad del grupo de usuarios.

¿Cómo configurar el bit SGID para archivos?

Ejecute el siguiente comando para configurar el bit setgid en el archivo file1:

# chmod g+s
Nota :Tanto los bits setuid como setgid se establecen mediante el símbolo s. El setgid se representa igual que el bit setuid, excepto en la sección de grupo de los permisos.

Ejecute el siguiente comando como root para configurar el bit setgid y permisos de lectura, escritura y ejecución para el propietario del archivo file1:

# chmod 2700 file1

El setgid se representa igual que el bit setuid, excepto en la sección de grupo de los permisos:

ls -l file1
-rwx--S--- 1 user1 user1 0 2017-10-30 21:40 file1

Utilice el comando chmod u+s para configurar el bit setuid. Utilice el comando chmod g+s para establecer el bit setgid.

¿Qué es Establecer permisos de ID de grupo para directorios

Cuando el bit setgid se establece en un directorio, todos los archivos creados dentro de dicho directorio heredan la propiedad del grupo de ese directorio. Por ejemplo, la carpeta carpeta1 es propiedad del usuario usuario1 y el grupo grupo1:

# ls -ld folder1
drwxrwxr-x 2 user1 group1 4096 2017-10-30 22:25 folder1

Los archivos creados en la carpeta folder1 heredarán la pertenencia al grupo group1:

# touch folder1/file1
# ls -l folder1/file1
-rw-rw-r-- 1 user1 group1 0 2017-10-30 22:29 folder1/file1

¿Cómo configurar el bit SGID para directorios?

Para configurar el bit setgid en un directorio, use el comando chmod g+s:

# chmod g+s folder1

Vea los permisos usando el comando ls -ld, anotando la s en los permisos del grupo:

# ls -ld folder1
drwxrwsr-x 2 user1 group1 4096 2017-10-30 22:32 folder1

Alternativamente, anteponga un 2 al modo de directorios:

# chmod 2770 folder1

¿Qué es un sticky bit en un directorio?

Cuando el sticky bit se establece en un directorio, solo el usuario raíz, el propietario del directorio y el propietario de un archivo pueden eliminar archivos dentro de dicho directorio.

Cómo configurar el bit adhesivo

Un ejemplo del sticky bit es el directorio /tmp. Use el comando ls -ld /tmp para ver los permisos:

# ls -ld /tmp
drwxrwxrwt  24 root root  4096 2017-10-30 22:00 tmp

La t al final simboliza que el sticky bit está activado. Un archivo creado en el directorio /tmp solo puede ser eliminado por su propietario o por el usuario root. Por ejemplo, ejecute el siguiente comando para establecer el sticky bit en la carpeta folder1:

# chmod a+t folder1

Alternativamente, anteponga un 1 al modo de un directorio para establecer el sticky bit:

# chmod 1777 folder1

Los permisos deben ser de lectura, escritura y ejecución para el propietario, el grupo y todos los demás, en directorios que tengan establecido el sticky bit. Esto permite que cualquier persona ingrese al directorio y cree archivos.

cómo encontrar archivos con SUID/SGID pero configurado

1. Para encontrar todos los archivos con SUID pero configurados, use el siguiente comando:

# find / -perm +4000

2. Para encontrar todos los archivos con el conjunto de bits SGID, use el siguiente comando:

# find / -perm +2000

También puede combinar ambos comandos para encontrar tanto SGID como SUID pero establecer archivos.

# find / -type f \\( -perm -4000 -o -perm -2000 \\) -exec ls -l {} \\;
¿Qué es SUID, SGID y Sticky bit?
Linux/UNIX:cómo encontrar archivos que tienen SUID/SGID configurado
Linux/UNIX:ejemplos del comando de búsqueda para encontrar archivos con conjuntos específicos de permisosLa última entrevista de Linux preguntas:intercambio


Linux
  1. Hoja de trucos para usuarios y permisos de Linux

  2. Las 30 principales preguntas y respuestas de entrevistas de OpenStack

  3. Las 25 preguntas y respuestas principales de la entrevista de Linux

  4. 20 Preguntas y respuestas de la entrevista Postfix

  5. ¿Qué es Sticky Bit, SUID y SGID en Linux?

25 Preguntas y respuestas de la entrevista de secuencias de comandos de Linux Shell

Cómo configurar la fecha y la hora en Linux

Permisos de archivos especiales en Linux:SUID, GUID y Sticky Bit

Preguntas de la entrevista de Linux:permisos especiales (SUID, SGID y sticky bit)

Preguntas de la entrevista de Linux:permisos básicos de archivos y directorios

Preguntas de la entrevista de Linux - Impresión de Linux (CUPS)