Каков наилучший способ запуска сценария оболочки (с привилегиями root) через php? - PullRequest
1 голос
/ 02 ноября 2010

Я сделал простой bash-скрипт для администрирования сервера и не могу понять, как его безопасно запустить на странице php: я хотел бы создать страницу администрирования php, но, очевидно, не хочуКод root пароль любой.Давайте сделаем пример (это, конечно, скрипт foo)

#!/bin/bash
touch /$1

этот простой / глупый скрипт не будет работать, если пользователь, который запускает его без разрешения на запись на /.
Собственно скриптдобавить apache virtualhosts, ftp пользователей и так далее ... есть идеи?
спасибо

1 Ответ

3 голосов
/ 02 ноября 2010

Используйте

sudo /path/to/executable/file

и настройте sudo, чтобы он мог выполнить следующую команду для текущего пользователя как root.Руководство sudoers, файл конфигурации, который вы должны изменить.

zerkms ALL = (ALL) NOPASSWD: /sbin/iptables -L FORWARD -n -v -x

Это пример из моего /etc/sudoers.Здесь я разрешил запускать команду /sbin/iptables -L FORWARD -n -v -x как root без запроса пароля для пользователя zerkms.

...