%20%D0%BE%D0%B4%D0%BD%D0%BE%D0%B9%20%D0%B0%D0%BB%D1%8C%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B9%20%D1%83%D1%87%D0%B5%D1%82%D0%BD%D0%BE%D0%B9%20%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8C%D1%8E%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F%3F.png)
Можно ли использовать sudo или какой-либо другой механизм, чтобы разрешить пользователю иметь доступ только к выполнению команд под другой конкретной учетной записью пользователя? (т. е. не root?)
Мне нужно предоставить некоторый уровень административного доступа через веб-инструмент, работающий под учетной записью www-data без оболочки. Но иногда им может быть полезно запускать программы как 'www-data' для выполнения административной работы на веб-сервере. Я не уверен, как разрешить это, ограничив при этом их доступ к root или другим службам.
решение1
Да - это возможно сделать с помощью sudo
. Из sudoers
страницы руководства:
A Runas_Spec sets the default for the commands that follow it. What this
means is that for the entry:
dgb boulder = (operator) /bin/ls, /bin/kill, /usr/bin/lprm
The user dgb may run /bin/ls, /bin/kill, and /usr/bin/lprm—but only as
operator.