Я хотел бы сделать пользователя сверхмощным, обладающим почти всеми правами root, но не способным прикоснуться к пользователю root (чтобы сменить пароль root).

Моя цель - чтобы пользователь "B" управлял моим веб-сервером. Проблема в том, что пользователь B должен иметь возможность запускать команды chown и chmod для некоторых файлов, принадлежащих другим пользователям.

Я пытался поместить B в корневую группу или использовать visudo, но этого недостаточно.

Я работаю с системой Centos 6.

Если у какого-то тела есть идеи!

3 ответа3

3

Лучше всего использовать правильно настроенный файл /etc /sudoers.

Если вы хотите, чтобы bob мог изменять права доступа и владельцев файлов пользователей fred , joe и sara , поместите это в файл sudoers. С этой строкой bob нужно будет использовать, например, sudo -u fred chmod ... чтобы изменить права доступа к файлам fred .

Runas_Alias  USERS = fred, joe, sara
bob          ALL = (USERS): /bin/chmod, /bin/chown
0

В идеале никто не хотел бы предоставлять привилегии типа root пользователям без полномочий root. Что именно вы пытаетесь достичь здесь ..? Почему пользователю "B" необходимо изменить владельца и права доступа к файлам, принадлежащим другим пользователям?

Хорошо, если это все, чего вы хотите достичь, почему бы не разрешить доступ на чтение к этим файлам и попросить пользователя "B" просто скопировать их в другое место. Это сделает пользователя "B" владельцем файлов, а также позволит изменить привилегии.

Другой обходной путь - использовать sudo чтобы они могли запускать команды от имени пользователя root.

0

Они должны иметь возможность управлять контентом веб-сервера без chown . Вы можете добавить их в ту же группу, в которой работает веб-сервер. Затем chown содержимое к желаемому пользователю. Это помогает установить липкий бит группы в каталоге содержимого верхнего уровня.

Как правило, лучше, если веб-сервер НЕ может писать каталоги содержимого. Единственным исключением являются каталоги кеша и загрузки, которые использует веб-сервер.

Другой подход, который я использовал, - это регулярное запланированное задание, которое обновляет контент из хранилища управления версиями. Это хорошо работает, когда несколько пользователей обновляют контент. В зависимости от программного обеспечения для контроля версий, вы можете обрабатывать chmod при регистрации или после регистрации. См. Какая система контроля версий может управлять всеми аспектами? для некоторых идей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .