LINUX.ORG.RU

lighttpd & cgi-bin

 


0

1

Собственно вопрос касатеся cgi-скриптов запускаемых из под lighttpd. Проблема заключается в том, что cgi-скрипты запускают одни бинарники и не запускают другие, даже с полностью прописанными путями до них (то что там есть проблемы с $PATH и $LD_LIBRARY_PATH стало ясно сразу, пришлось дополнительно делать export).

Подозреваю что там проблема с permission'ами т.к. скрипты без проблем работают с echo, cat, ls и т.д. (всё что работает в безрутовом режиме), а с чем-то «покруче» - облом. Судя по гуглу, все процессы cgi скриптов по умолчанию запускаются от имени пользователя «http», ввиду чего возник закономерный вопрос - как повысить привелегии этого пользователя или сменить его на рута (прописать в /etc/passwd или ещё как ?).

На всякий случай - у бинарника владелец root:root, права 755.

p.s. Под busybox'овсым httpd такого геммороя не было, всё работало из коробки.



Последнее исправление: Blacksmith (всего исправлений: 1)

Если плевать на безопасность - то можно chmod u+s file.cgi и он будет выполняться от root (если владелец root)

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

Ну на безопасность никто не плюёт - допуск будет лишь для конткретных адресов, под паролем, с логгированием и лишь на определённые скрипты.

Спасибо за совет, посмотрю поможет ли ;)

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

А u+s, это suid-бит, просто я привык его через 4000 выставлять, тогда таки да, это плевание на безопасность ...

Кстати не помогло, значит загвоздка в чём-то другом :(

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

Пришлось пока отказаться от lighttpd в пользу busybox httpd, из под которого всё без проблем запускается.

К слову, вывод set на lighttpd и busybox httpd отличается разительно - последний берётся все переменные среды, включая /etc/profile . Возможно проблема в этом, тогда вопрос - как заставить lghttpd экспортировать все переменные, что есть ?

К слову - процессы он запускает от рута, но определённые бинарники запускать хоть ты тресни не хочет. Возможно попался кривой билд и стоит попробовать другой или это такая особенность lighttpd ?

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