Используя Sudo управляет через Веб-страницу

Я работаю над веб-страницей, где Вы нажимаете кнопку, петлявшую в суперпользователе. Я пытаюсь выполнить мини-топологию сети с помощью сценария Python через веб-страницу.

<?php
$mininet='sudo python loadbalancing.py';
$python=exec($mininet);
echo $python;
?>

Когда я выполняю вышеупомянутый код, он ничего' не возвращает.

Однако, когда я выполняюсь ниже кода, он возвращается, *** Мини-сеть должна работать как корень.

   <?php
    $mininet='sudo python loadbalancing.py';
    $python=exec($mininet);
    echo $python;
    ?>

Может кто-то помогать мне, как запустить мини-сетевой скрипт Python через веб-страницу.

Я установил супер разрешение через "visudo" и chmod, но все еще не работает. В visudo я добавил следующее.

%sudo   ALL=(ALL) NOPASSWD: /var/www/html/loadbalancing.py

Я установил

sudo chmod 777 loadbalancing.py
sudo chmod 755 loadbalancing.py

Но все еще не работает или выполняет сценарий Python в веб-странице.

Примечание: Не касайтесь о безопасности, поскольку будет процесс аутентификации перед этим процессом.

Спасибо.

1
задан 9 March 2017 в 09:29

1 ответ

Я делаю несколько предположений здесь... Я подозреваю, что Ваша вторая вставка кода была предназначена, чтобы быть идентичной Вашему первому - только без sudo. То, которое является, почему Вы добрались, "должно быть выполнено как корневая" ошибка. Я также подозреваю, что Ваш первый блок кода ничего не возвратил, потому что он застрял при интерактивной sudo подсказке пароля.

я ничего не знаю о php или мини-сети, но когда я вижу Ваш отрывок выше, интересно, имеет ли учетная запись пользователя, запускающая скрипт, способность к sudo без пароля. Например, если бы Ваш сценарий работал как "myuser", то Вам было бы нужно что-то вроде этого в/etc/sudoers файле:

myuser ALL=(ALL) NOPASSWD: ALL

Без "NOPASSWD", Ваш сервис застревает, ожидая пароля myuser при попытке sudo. Так как сервис не может обработать интерактивную подсказку, он умирает, и Вы ничего не возвратили.

стандартное предупреждение: sudo без потребности в пароле опасен. Используя его для выполнения произвольных команд на основе ввода данных пользователем от веб-страницы сумасшедший плохой, если Вы не находитесь в содержавшей среде песочницы.

0
ответ дан 8 December 2019 в 06:18

Другие вопросы по тегам:

Похожие вопросы: