LINUX.ORG.RU

Наследование прав доступа от родительского каталога

 


0

2

Есть директория /srv/sites/domain.ltd/html принадлежащая пользователю и группе apache:apache и имеющая права 6770 (rwsrws---). Есть юзер iskatel, который входит в группу apache и он создаёт в этой директории файл, скажем, index.html. Файл автоматом получает принадлежность к юзеру iskatel и группе apache. А я вот ожидал другого результата, ведь наличие suid и sgid битов на каталоге должно приводить к тому что файл у родительского каталога будет наследовать и группу и юзера, то есть юзер должен быть apache. Почему так?

★★★★★

Ответ на: комментарий от Deleted

Э... https://ru.wikipedia.org/wiki/Suid

Бит setuid, установленный для директорий, игнорируется в большинстве версий Unix[источник не указан 1468 дней].

Димвесельно Действительно...

А какие тогда есть способы получить желаемое?

sunny1983 ★★★★★ ()
Ответ на: комментарий от arcee

Каждый раз делать chown? А представь, что юзеру права рута, чтобы использовать chown, не даются. А вообще это же вечная проблема в линуксе, когда два юзера пишут в один каталог с одинаковыми правами. Вот например юзер по ftp создаёт файлы от имени iskatel, php-скрипты создают файлы от имени apache. Вообще случай с веб-сервером - это частный случай. Другой случай, когда имеется файлопомойка в которой создают файлы различные сотрудники одного отдела, если один случайно создаст файл read-only - то второй не сможет его удалить. Я не верю, что за столько лет существования линукса никто не научился решать эту проблему.

sunny1983 ★★★★★ ()
Ответ на: комментарий от sunny1983

Другой случай, когда имеется файлопомойка в которой создают файлы различные сотрудники одного отдела, если один случайно создаст файл read-only - то второй не сможет его удалить.

Если оба юзера входят в группу, являющуюся группой-владельцем этого файла, то сможет.

dexpl ★★★★★ ()
Ответ на: комментарий от sunny1983

Если пользователь не входит в группу wheel - вообще не стоит менять права и владельца в будущем, это поможет более менее контролить «файло-помойку». ftp и web чуточку отличаются. На ftp сервере владельца менять не стоит, а на web сервере создавать файлы скриптом (права apache).

если один случайно создаст файл read-only - то второй не сможет его удалить. Я не верю, что за столько лет существования линукса никто не научился решать эту проблему.

проблемы нет. один отдел - одна группа, все пользователи этой группы имеют равные права на файлы и могут использовать chmod. Заблокировать файл можно только с помощью chown, а значит пользователь должен входить в группу wheel. Не стоит подключать к этой группе всех подряд, также не стоит подключать рядового пользователя более чем к одной группе.

P.S. Надо поэксперементировать с этим )

arcee ()
Ответ на: комментарий от sunny1983

Каждый раз делать chown? А представь, что юзеру права рута, чтобы использовать chown, не даются.

Можно использовать bindfs, что-то вроде:

/home/alex/projects	/home/dev/projects	fuse.bindfs create-for-user=alex,create-for-group=alex,force-group=dev,force-user=dev,perms=g+rwX	0	0
Это из моего /etc/fstab, может тебя натолкнет на идею.

anonymous ()
Ответ на: комментарий от kickass

т.е. перед этим этого файла не должно быть. а потом впиши в него то, что надо

kickass ()

через setfacl добавь юзера apache на доступ к директории (default в setfacl) и у него (апача) автоматом будет доступ к файлам юзера

futurama ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.