LINUX.ORG.RU
ФорумAdmin

как ограничить доступ к одному субдомену?

 , ,


0

2

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

пока одно решение - разместить директорию с субдоменом подальше от основного сайта
например сайт в /home/user/domain.ru/www/
а субдомен в /var/www/subdomain/

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

но нет ли более надёжного решения? как-то средствами апача запретить пхп вообще выходить из его директории? или что-то подобное

; open_basedir, if set, limits all file operations to the defined directory
; and below.  This directive makes most sense if used in a per-directory
; or per-virtualhost web server configuration file. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
; http://php.net/open-basedir
;open_basedir =
Black_Roland ★★★★
()

Но правильно будет сделать chroot или контейнеры или несколько пользователей в системе. Нужно запустить несколько воркеров php от разных пользователей: либо suphp, но тогда нельзя fastcgi, либо php-fpm и несколько пулов с разными пользователями.

Выше я написал про open_basedir — в этом случае все равно придется запустиьт несколько PHP. Проще всего через php-fpm.

сумбурно написал, но надеюсь смысл понятен

Black_Roland ★★★★
()
Последнее исправление: Black_Roland (всего исправлений: 2)
Ответ на: комментарий от Black_Roland

Есть же ещё FastCGI + suexec. Достаточно создать враппер, который будет запускаться от имени нужного пользователя, и нескольких пользователей - одного для основного сайта, другого для поддомена. Мне такая схема нравится больше, чем вариант с использованием php-fmp.

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