SUID немного по каталогам

5047
TheMAn

В Linux есть SUID, SGID и закрепленные биты для прав доступа к каталогу.

Я абсолютно уверен в том, что в файлах и папках есть бит «SGID» и «SGID».

Но что произойдет, если я добавлю бит SUID в каталог?

Например, если я применяю бит SGID к файлу, процесс, который запускается с этим файлом, будет использовать эффективный идентификатор группы группы файла, а не основную группу пользователя, который вызывает файл. То же самое, если вы примените бит SUID к файлу: он будет работать с владельцем в качестве эффективного пользователя.

Это изменится, как только вы примените бит SGID к каталогу, например chmod -R 2770 /var/testdir/. Теперь все новые файлы и папки, которые будут созданы внутри, /var/testdir/будут наследовать одну и ту же группу, /var/testdir/даже если основная группа создателя отличается. Также подкаталоги будут наследовать бит SGID.

Но что произойдет, если вы примените бит SUID к каталогу? Я не нашел никакой информации по этому делу.

Кроме того, что произойдет, если вы примените SGID и бит SGID к одной и той же папке?

7

2 ответа на вопрос

6
Steven

GNU Coreutils: директория setuid и setgid

27.5 Каталоги и биты Set-User-ID и Set-Group-ID

В большинстве систем, если установлен бит set-group-ID каталога, вновь созданные подфайлы наследуют ту же группу, что и каталог, а недавно созданные подкаталоги наследуют бит set-group-ID родительского каталога. В некоторых системах бит set-user-ID каталога оказывает аналогичное влияние на владение новыми подфайлами и биты set-user-ID новых подкаталогов. Эти механизмы позволяют пользователям более легко обмениваться файлами, уменьшая необходимость использовать chmod или chown для обмена новыми файлами.

Очень приятно, это то, что я искал. В этом случае, я думаю, в Ubuntu не реализован бит set-user-ID с упомянутым поведением для каталогов. Но я немного опробую :) Спасибо TheMAn 8 лет назад 0
1
Hasib Wasiu

SUID or setUID (Set User ID for execution), here permission bit no is 4

Simply set user permission on specific executable command such as “useradd”,”userdel” or permission to copy a file in root directory etc. You may say set special permission for normal user.

For an example, a normal user in your system is “kiosk”; Here “root” user want to give permission only to this user to create another user for this system but this new user can’t act as a super user. Here “root” user says that “kiosk” only you can add another user in this system. It means only root user can set permission for another user to execute this command as like “root” user using SUID. Remember it is implementing on executable file.

To set SUID syntax is

[root@localhost~]#chmod 4555 executable_file

or

[root@localhost~]#chmod u+s executable_file

To get more details about SUID, SGID and Sticky bit please check below link

http://topicsfeedback.com/special-permission-on-linuxunix-suidsgid-and-stikybit/

or

You may try Android Apps in google play store which is named as "Advance Linux". That is very good apps for linux user

https://play.google.com/store/apps/details?id=com.topicsfeedback.advancelinux

Это не отвечает на вопрос вообще. Stefan Paul Noack 5 лет назад 0

Похожие вопросы