Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Запуск Bash скрипта из php  (Прочитано 4628 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sirota

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Запуск Bash скрипта из php
« : 18 Января 2015, 12:53:01 »
Подскажите как запустить bash  скрипт из  php-скрипта? (Ubuntu 14, nginx, php5-fpm)

Пытался так -
system("sudo ./script");

не работает (команды типа ls  отрабатывают)

Добавил в /etc/sudoers :
Цитировать
www-data ALL=(ALL) ALL
и задал для www-data пароль  (sudo passwd www-data)

И опять Bash скрипт не запускается :

system
(" 'wwwpassword' | sudo ./script");
shell_exec(" 'wwwpassword' | sudo ./script");
exec(" 'wwwpassword' | sudo ./script");


Всё безуспешно, помогите плиз

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: Запуск Bash скрипта из php
« Ответ #1 : 18 Января 2015, 14:00:16 »
Цитата: man sudo
echo "wwwpassword" | sudo -S
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн ChuckSandos

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
Re: Запуск Bash скрипта из php
« Ответ #2 : 18 Января 2015, 15:27:50 »
Вопиющая ДЫРИЩА!
бо незря из пхп не разрешается запускать сискоманды от рута... :coolsmiley:
Спасенье утопающих дело рук самих утопающих (tm)

Оффлайн Sirota

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Запуск Bash скрипта из php
« Ответ #3 : 18 Января 2015, 16:04:04 »
Цитата: man sudo
echo "wwwpassword" | sudo -S
Благодарю! Заработало

Вопиющая ДЫРИЩА!
бо незря из пхп не разрешается запускать сискоманды от рута... :coolsmiley:
Но задача стоит максимально быстро выполнить действия по полученным данным. Есть более безопасное решение?

Оффлайн ChuckSandos

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
Re: Запуск Bash скрипта из php
« Ответ #4 : 18 Января 2015, 16:15:03 »
Безопасное - не юзать:
1. пароль рута вписанным с пхп-скрипт;
2. вызов системы под рутом.
"Быстрое" - "в морг"!  :D ;D :2funny:
Ну да каждый ижет себе приключения на... :)
Решение правильное (если это проф проект конечно) - юзать спец. написанные скрипты или даже С/С++ утилиты, берущие данные (или манипулирующие ими) НЕ ПОД РУТОМ! хоть заведя ограниченную учётку для таких процессовЮ, хоть еще как-то - но чтобы 1 и 2 не имело места...
Всё зависит от конкретики - не зная полной, настоящей цели проекта и этого его фрагмента, ничего кроме общего решения, в части условий безопасности, подсказать невозможно.
Спасенье утопающих дело рук самих утопающих (tm)

whatdoyouneed

  • Гость
Re: Запуск Bash скрипта из php
« Ответ #5 : 18 Января 2015, 17:10:54 »
Вопрос даже звучит не "по-человечачьи")

Если переработать - "Как запустить команду из шелл с рут-правами с помощью php-скрипта (с вэб-сервера?)". Не, ну если это для чего-то, типа "insider attack",  то вполне закономерный вопрос))). Только такой эээ... фигней надо заниматься тогда, когда такого типа вопросы уже не возникают.

Оффлайн Sirota

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Запуск Bash скрипта из php
« Ответ #6 : 18 Января 2015, 17:35:25 »
Вы правы, вероятно стоит переосмыслить всю архитектуру

 

Страница сгенерирована за 0.046 секунд. Запросов: 25.