Дорогие, я изучаю права доступа Linux и сбит с толку, пытаясь понять setuid, setgid и stickybit. Правильно ли я понимаю ниже.
Setuid :-
Файлы: - Если для исполняемого файла установлен setuid и он запускается, то он выполняется не с привилегиями запустившего его пользователя, а с привилегиями владельца файла.
Каталоги: - Разрешение setuid, установленное для каталога, игнорируется в системах UNIX и Linux.
Немного понемногу:-
Файлы: разрешение sticky bit игнорируется для файлов.
Каталоги: Если для каталога установлен бит закрепления, файл может быть удален только владельцем файла, владельцем каталога или привилегированным пользователем.
Сетгид :-
Файлы:- Setgid, когда используется для файлов, очень похож на setuid. Процесс, при запуске, будет запущен от имени группы, владеющей файлом.
Каталоги:- Применим ли setgid к каталогам? Я пытаюсь установить его, но он не устанавливается.
-bash-4.4$ pwd
/cms/fmw/sticktest
-bash-4.4$ ls -rlt
total 3
drwxrwxr-x 2 cmsstg cmsstg 3 Nov 8 16:23 guidtest
-bash-4.4$
-bash-4.4$ chmod 2775 guidtest/
-bash-4.4$ ls -rlt
total 3
drwxrwxr-x 2 cmsstg cmsstg 3 Nov 8 16:23 guidtest
-bash-4.4$
решение1
Применимо. Это означает, что файлы в каталоге будут созданы с группой каталога.
В качестве примера:
[/tmp]$ mkdir konijn
[/tmp]$ ls -ld konijn
drwxr-xr-x 2 ljm users 4096 Nov 8 14:15 konijn
[/tmp]$ touch konijn/wiep
[/tmp]$ ls -l konijn/wiep
-rw-r--r-- 1 ljm users 0 Nov 8 14:15 konijn/wiep
[/tmp]$ chgrp games konijn
[/tmp]$ chmod 2755 konijn
[/tmp]$ ls -ld konijn
drwxr-sr-x 2 ljm games 4096 Nov 8 14:19 konijn
[/tmp]$ touch konijn/wiep2
-rw-r--r-- 1 ljm games 0 Nov 8 14:21 konijn/wiep2
Обратите внимание, что владелец ( ljm
) должен быть членом группы ( games
)