права на скрипт в ubuntu из php

285
13 мая 2017, 21:42

есть скрипт /usr/local/vesta/bin/v-add-user из под sudo работает. его права

-rwxrwx--- 1 root root 5344 ноя 25 15:40 /usr/local/vesta/bin/v-add-user

хочу выполнить его в скрипте php , shell_exec('/usr/local/vesta/bin/v-add-user user pass и т.д.');

не работает...

etc/sudores

www-data ALL = (ALL) ALL, NOPASSWD:/usr/local/vesta/bin/*

не помогает я так предполагаю потому что в скрипте ещё куча обращений в другие рутовые скрипты.

как более грамотно организовать выполнение скрипта /usr/local/vesta/bin/v-add-user через web из php да еще и под root и только этот скрипт и никакой другой?

Answer 1

etc/sudores

www-data ALL = (ALL) ALL, NOPASSWD:/usr/local/vesta/bin/*

раз необходимую конфигурацию в конфигурационный файл программы sudo вы уже внесли, то и используйте эту программу.

т.е., вместо:

shell_exec('/usr/local/vesta/bin/v-add-user user pass и т.д.')

указывайте:

shell_exec('sudo /usr/local/vesta/bin/v-add-user user pass и т.д.')
Answer 2

Можете установить пакет acl

Для CentOS

yum install acl

И установить через него права на нужный файл/директорию. Устанавливаем маску, дефолтную маску

setfacl -R -m d:m:rwx,m:rwx /usr/local/vesta/bin/v-add-user

права для юзера apache

setfacl -R -m d:u:apache:rwx,u:apache:rwX /usr/local/vesta/bin/v-add-user

прав для юзера client

setfacl -R -m u:user:rwx,u:user:rwX /usr/local/vesta/bin/v-add-user
READ ALSO
Как удалить записи из бд сделанные сегодня(00:00>)?

Как удалить записи из бд сделанные сегодня(00:00>)?

Как удалить записи из бд сделанные сегодня? То бишь после 00:00

286
fsockopen() не работает асинхроно

fsockopen() не работает асинхроно

Попытка асинхронно отправить данные с помощью fsockopen() не проходит: без fgets() не работает, а с fgets()уже перестает быть асинхронным

332
Не могу получить JSON данные, 500 Internal Server Error

Не могу получить JSON данные, 500 Internal Server Error

Пытаюсь вернуть JSON ответ, но при попытке получения, выдает

350
php class=“active” для ссылки

php class=“active” для ссылки

Пожалуйста, помогите в тег li вставить значение class="active", если категория активна в данный моментКод:

300