LINUX.ORG.RU
ФорумAdmin

Разделение прав доступа для Apache


0

0

Есть Apache, есть несколько пользователей, у которых есть сайты на PHP или Perl. Требуется, чтобы их скрипты запускались с правами их пользователя, а не с правами пользователя, запустившего Apache, так как они не хотят, чтобы другой пользователь мог посредством своих скриптов прочитать их исходные коды и пароль к MySQL.

Можно ли это сделать, если установлен только один Apache? Если нет, то как сделать, чтобы обращения на someuser.mydomain.com:80 перенаправлялись на Apache пользователя someuser (someuser.mydomain.com:8081), но чтобы браузер общался с сервером исключительно по 80-му порту?


fastcgi самое лучшее решение если нужна исключительная безопасность и скорость. плавда памяти нужно много, но оно того стоит ;)

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

ну да, по ссылке и проблемы описаны, цитирую:

>1) http-авторизация

>2) .htaccess

>3) apache-specific функции

>4) частичная несовместимость http headers

>.....

>п.1,4 и частично 3 решены (через жопу)..

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

1. pass header в настройках mod_fastcgi
2. зачем, когда есть php.ini который для каждого VH можно сделать разный при помощи SetEnv PHPRC?
3. зачем давать пользователю трогать процессы apache? нам же нужна безопасность
4. никогда не замечал... все работает как часики. по краиней мере, никто еще не жаловался
предложи лучшее решение. безопасное и быстрое

Cosmicman ★★
()

для PHP есть такая штука -suphp
http://www.debian-administration.org/articles/84

я остановился на sbox http://stein.cshl.org/software/sbox/

так как он создает для юзера полное chroot окружение .

при этом мне пришлось включить php как cgi ,так что юзерам которые пишут php скрипты приходится вставлять !#/usr/bin/php в каждый запускаемый скрипт .

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

может быть , зато комбинация sbox + perl cgi , это то -что мне надо .

j262 ★★
()

вообще, в апаче, определенно, естькуча мест где его можно немного похачить и запускать скрипты из-под кого нужно.

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

>при этом мне пришлось включить php как cgi ,так что юзерам которые пишут php скрипты приходится вставлять !#/usr/bin/php в каждый запускаемый скрипт .

самый извращенный способ, который я видел :) обычно это делается так:

в cgi-bin кладется php.cgi и в апаче:

Action phpscript /cgi-bin/php.cgi AddHandler phpscript .php

либо использовать binfmt и на скрипты просто +x ставить

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

>2. зачем, когда есть php.ini который для каждого VH можно сделать разный при помощи SetEnv PHPRC?

что значит "зачем"? тебе скажут "хочу!", или юзер выберет другой хостинг

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

>при этом мне пришлось включить php как cgi ,так что юзерам >которые пишут php скрипты приходится вставлять !#/usr/bin/php в >каждый запускаемый скрипт .

>самый извращенный способ, который я видел :) обычно это >делается так:

>в cgi-bin кладется php.cgi и в апаче:

>Action phpscript /cgi-bin/php.cgi AddHandler phpscript .php
плиз если можно подробнее

содержимое php.cgi - #!/usr/bin/php ?

>либо использовать binfmt и на скрипты просто +x ставить


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

php.cgi - бинарник php, собранного с --enable-cgi хотя если охото собсвтенный php.ini юзать, то можно и скрипт шеловский с PHPRC=...

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

а как насчет security с php ? я добился мспользуя cgi-wrapper sbox полного chroot окружения для юзера , но минус такого решения ,то что php скрипты должны иметь #!/usr/bin/php . можно ли подкрутить php так чтоб один юзер не мог , не то чтобы читать чужие фаилы , но даже не видеть содержимое чужих каталогов ?
может есть что-то типа метода как этого можно достигнуть ?

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