Отредактируйте файл sudoers, чтобы разрешить только определенные команды

Мне нужно запустить скрипт cPanel из командной строки через PHP exec функция (другие опции cPanel нежизнеспособны). Команда примерно:

uapi --user=[user] Email suspend_incoming email=[user]%40[domain].[tld]

Я получил следующую ошибку:

Ошибка setuids: Попытка setuid как обычного пользователя с RUID ***

Это, в свою очередь, привело меня к пониманию того, что пользователь, под которым работает PHP, делает не иметь разрешение на выполнение этой команды, которая приводит меня к эта тема. тем не мение я не хочу слепо включать все команды для этого пользователя при использовании файлов CHMOD, как 777 sudo из командной строки или PHP exec скрипт.

Как я только разрешить uapi команда (также несколько конкретных команд), которая будет выполняться этим пользователем при использовании sudo через редактирование к sudoers файл?

-1

Решение

Вы можете дать пользователю доступ для выполнения команды от имени пользователя root через запись в sudoers файл вроде так (при условии www-data является владельцем владельца процесса PHP):

www-data  ALL=(root) NOPASSWD: /path/to/uapi

Получить путь к uapi файл через команду which uapi, Вы должны внимательно рассмотреть последствия этого действия для безопасности.

Этот вопрос об обмене стеками в UNIX имеет хорошее подробное объяснение синтаксиса записи sudo.

-1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]