Как дать владение для укоренения, не будучи корнем? (необходимый для Apache)

Можно, возможно, проверить chironfs http://www.furquim.org/chironfs/

2
задан 5 December 2011 в 06:57
2 ответа

Вам не нужно менять владельца и группу на root в папке, и вы не можете. Однако вы можете предоставить права на чтение для группы и других с помощью:

chmod go+r foldername

Пример:

yvaine:~ rilindo$ ls -la | grep test
drw-------    2 rilindo  staff        68 Dec  5 01:10 test
yvaine:~ rilindo$ chmod go+r test
yvaine:~ rilindo$ ls -la | grep test
drw-r--r--    2 rilindo  staff        68 Dec  5 01:10 test

Однако, если это пустая папка, возможно, что просмотр каталогов отключен в Apache по умолчанию. В этом случае вы можете добавить или изменить где-нибудь в своей строфе:

Options +Indexes

Обратите внимание, что обычно рекомендуется отключать просмотр каталогов, если для этого нет веской причины.

1
ответ дан 3 December 2019 в 10:14

Другие, кажется, отвечают на ваш подразумеваемый вопрос «как я могу это исправить?» И хорошо с этим справляются, поэтому я подумал, что отвечу на ваш настоящий вопрос «почему это что? ".

Отказ от права владения файлом через chown, то есть передача его другому пользователю, по уважительным причинам запрещается всем пользователям без полномочий root. Рассмотрим следующую последовательность:

cp /bin/bash ~/naughty

Теперь у вас есть копия bash в вашем домашнем каталоге. Вы владеете им. Ничего страшного.

chmod 4755 ~/naughty

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

chown root:root ~/naughty

Поздравляю, вы только что внедрили свою систему; у вас есть копия оболочки, которая является SUID для root и может быть запущена кем угодно.

Есть и другие причины, по которым возможность отклонить файл является плохой, например, это мешает дисковым квотам, если кто-то может создать большой файл, а затем передать его другому пользователю. Но убийственная причина та, что указана выше, и единственный способ закрыть эту дыру (не избавляясь от SUID, что является прекрасной идеей, но трудно сделать) - это сказать, что никто, не являющийся пользователем root, не может передать файл другому пользователю. .

3
ответ дан 3 December 2019 в 10:14

Теги

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