Безопасный запуск приложений сервера и php

akle

Новичок
Безопасный запуск приложений сервера и php

Попытаюсь описать суть проблемы:

Существует web-интерфейс для работы клиентов. Клиенты делают некоторые изменения, которые затем сохраняются в базе.
Дальше должно происходить следующее: этот же или другой скрипт, получив данные из базы, формирует командный файл, а затем этот командный файл должен исполниться. Все это под Unix-подобной системой.

Понятно, что можно сформировать и запустить файл (shell-скрипт) чем-нибудь вроде system(), но возникает проблема: у того пользователя, под именем которого запустится файл должны быть права на соответствующие команды (если я правильно понимаю), а значит теоретически, например при взломе php-скрипта, недоброжелатель сможет исполнить всякую гадость.

Обьяснил конечно сумбурно. В общем смысл примерно такой как, например, в Cpanel: когда пользователь делает поддомен и меняются соответствующие конфиги dns. Т.е. каким образом можно изолировать клиентскую часть от серверной, но при этом при изменениях, сделанных клиентом через web-интерфейс сразу же происходили изменения и на сервере?
Как это все максимально безопасно реализовать или делать это на php вообще изврат? Как это сделано в Cpanel и вообще на чем она написана?

Если что-то подобное уже обсуждалось или есть другие интересные ссылки, постите плиз, т.е. поиски подобной информации пока что пользы не принесли.
 

Navarro

Новичок
Разделить. Т.е клиенские данные пишуть, скажем в базу, а некий скрипт считыват данные и вносит изменения.
В данном случае данные пишуться от пользователя www, а исполнятся могут хоть от рута. Естественно обходящий скрипт должен быть вынесен за пределы видимости www.
 

akle

Новичок
Да, такие мысли конечно приходили, но мне пока не понятно как вызывать тот скрипт (за пределами видимости www), который будет формировать и/или исполнять файл? Если я правильно понимаю, то запуская его например system(), получим, что под юзером www.
 

boombick

boombick.org
http://www.opennet.ru/docs/BSD/freebsd-arch/jail.html - посмотри вот такую тему...

ЗЫ Но php тут не при чем, имхо.. Такие вопросы лучше на никсовых форкмах задавать
 
Сверху