LINUX.ORG.RU
решено ФорумAdmin

[Костыль]Выполнение программ через web-морду


0

0

Как запустить процесс через web-морду с владельцем-пользователем отличными от того, под которым запускается сам web-сервер?
setUID на конечную программу я ставить не собираюсь. А для shell-скриптов он бесполезен. И писать Си-программу для каждого случая мне не оч хочется.

Чисто на вскидку:
1) Пишешь скрипт для крона, который будет проверять БД(да хоть плейн-текстовый файл) на наличие обновлений(новых команд).
2) Пишешь скрипт, который записывает введённые команды в эту БД.
3) ...
4) ПРОФИТ!

tia
()

Как то я делал подобный костыль, который запускал проги от имени залогиненного через http basic auth юзера.

Bers666 ★★★★★
()
Ответ на: комментарий от tia

Пишу управлятор виртуальными машинами на сервере виртуальных машин (virtualbox). Так что нужна скорость.
Смотрел libvirtd - чё-то оно не пашет (по крайней мере, для VBox).

Я тут уже подумал в сторону sudo.

markevichus ★★★
() автор топика
Ответ на: комментарий от Bers666

>Как то я делал подобный костыль, который запускал проги от имени залогиненного через http basic auth юзера.
Этот костыль использовал какие-то средства mod_auth* для ЗАПУСКА прог?

markevichus ★★★
() автор топика
Ответ на: комментарий от markevichus

>>Как то я делал подобный костыль, который запускал

проги от имени залогиненного через http basic auth юзера.

Этот костыль использовал какие-то средства mod_auth* для ЗАПУСКА прог?


Да, автентификация через PAM. Плюс suid скрипт, который скидывал свои привилегии до нужного юзера, и исполнял то, что нужно. Если интересно, могу поделиться исходником.

Bers666 ★★★★★
()

> setUID на конечную программу я ставить не собираюсь. А для shell-скриптов он бесполезен. И писать Си-программу для каждого случая мне не оч хочется.

А если написать одну программу-обертку, которая будет запускать программу, имя которой ей будет передаваться параметром, и на нее поставить SUID-bit?

drull ★☆☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.