Как я могу разрешить произвольным пользователям редактировать файлы в поддереве '/opt'?

Я пользователь "кто-то". У меня есть типичная экосистема веб-сайта "веб-блоб" (по сути, поддерево FS, начиная с типичного каталога Apache "htdocs").

Его файлы принадлежат "root" и сгруппированы в "daemon", чтобы Apache мог их читать и / или выполнять, в то время как "root" также может писать в них (они живут в "/ opt", как правило, заполняются скриптами или "установщиками"). ссылается как на супер).

Как "кто-то", я хочу создать git-репо прямо здесь (в "htdocs"), чтобы отслеживать изменения конфигурации и т. Д., Но я не хочу запускать "git" как super (я стараюсь избегать запуска вещей как super, где возможный). Я не хочу присваивать / chgrp файлы моему имени пользователя, потому что произвольные пользователи не должны шутить в '/opt/...', верно?

Поэтому я подумал - почему бы мне не добавить себя в группу 'daemon' и не включить групповую запись в файлы? Разве это не чище? Но, возможно, не стоит делать обычных пользователей частью группы 'daemon', или, может быть, не стоит делать файлы, сгруппированные в 'daemon', доступными для записи - я просто пока не знаю почему.

Есть ли рекомендуемый способ дать "кому-то" доступ на запись к вещам, которые живут в "/ opt" и принадлежат "root", и оставить их доступными только для чтения для таких вещей, как Apache в режиме демона, без обращения к ACL? Я так не думаю, но я не умный человек.:-D

(Этот вопрос связан, но не совсем прояснил его для меня: Полномочия пользователя: Демон и Пользователь).

1 ответ

Самое близкое, что я понял, это перемещение содержимого "htdocs" куда-то еще (в данном случае, поскольку "кто-то" является единственным предполагаемым редактором сайта, я мог бы припарковать вкусности, например, в "/ home / somebody / some_website-htdocs"), а затем создайте символическую ссылку из исходного местоположения, указывающую на фактические файлы. Затем я могу переуступить файлы "кому-то", чтобы обеспечить доступ для записи, а все остальное остается прежним ( Apache все еще может читать / ex через группу "daemon").

Предположим, что это имеет смысл, если бы я хотел затем расширить редактирование для нескольких пользователей, возможно, я бы создал "веб-пользователя" и группу, переместил "blob" куда-нибудь в "/home/web/...", ссылка вместо этого, затем добавьте 'daemon', 'somebody' и любых других пользователей в группу 'web' и измените режим файлов для записи в группы.

Этот уровень контроля, вероятно, немного умстендовичен, но лучший ответ, вероятно, научит меня (и других, кто находит этот вопрос) хорошему управлению разрешениями.

Другие вопросы по тегам