ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Администрирование > *nix системы
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

chroot + php-fpm
  #1  
Старый 23.01.2010, 04:19
Аватар для PandoraBox
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию chroot + php-fpm

В процессе обсуждения в highload_php_ru оказалось, что в услвиях chroot, fopen("http://yandex.ru") не работает, т.к. неможет отрезолвить адрес.

Хотел было тоже поковыряться в поисках решения, но это сделали быстрей меня. Оставляю здесь решение, чтобы не потерялось.

Нужно скопировать из корневого /etc в сhroot-овый etc файлы host.conf, hosts, localtime, resolv.conf, nsswitch.conf (по идеи только его должно хватить, но не уверен). Также cp -a /lib/libnss_{dns,files,compat}* /chroot/lib/ и рестарт php-fpm, чтобы glibc подхватил нужные либы

Код:
$ set CHROOT_FPM="/var/www"; echo $CHROOT_FPM;
/var/www
симлинки
Код:
$ ln -s "/etc/host.conf" "$CHROOT_FPM/host.conf";
$ ln -s "/etc/hosts" "$CHROOT_FPM/hosts";
$ ln -s "/etc/localtime" "$CHROOT_FPM/localtime";
$ ln -s "/etc/resolv.conf" "$CHROOT_FPM/resolv.conf";
$ ln -s "/etc/nsswitch.conf" "$CHROOT_FPM/nsswitch.conf";
симлинки на дополнительно библиотеки MySQL например
Код:
$ ln -s "/lib/" "$CHROOT_FPM/lib"
$ mkdir -p "$CHROOT_FPM/tmp"
$ ln -f "/tmp/mysql.sock" "$CHROOT_FPM/tmp/mysql.sock"

Последний раз редактировалось PandoraBox; 23.01.2010 в 20:41..
 
Ответить с цитированием

  #2  
Старый 23.01.2010, 04:23
Аватар для PandoraBox
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию

на примере NgINX

Код:
        location ~ \.php$ {
................
            root           /var/www/rambler_ru;
.......
            fastcgi_param  DOCUMENT_ROOT    /rambler_ru;
            fastcgi_param  SCRIPT_FILENAME  /rambler_ru$fastcgi_script_name;
            fastcgi_param  PATH_TRANSLATED  /rambler_ru$fastcgi_script_name;

            include        fastcgi_params;
в fastcgi_params коментируем
Код:
#fastcgi_param  DOCUMENT_ROOT      $document_root;
 
Ответить с цитированием

  #3  
Старый 23.01.2010, 16:46
Аватар для PandoraBox
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию

nginx не умеет и не будет уметь запускать отдельные локейшены от разных пользователей, посему от файлового способа передачи запроса придется отказаться или приминить патч

Код:
~/nginx-0.6.31/src$ grep -R request_body_file_group_access *
http/ngx_http_request.h:    unsigned
request_body_file_group_access:1;
http/modules/ngx_http_dav_module.c:        r-
>request_body_file_group_access = 1;

http/ngx_http_request_body.c:            if (r-
>request_body_file_group_access) {

http/ngx_http_request_body.c:        if (r-

>request_body_file_group_access) {

http/ngx_http_request_body.c, ngx_int_t
ngx_http_read_client_request_body:

            if (r->request_body_file_group_access) {
                tf->access = 0660;
            }

Последний раз редактировалось PandoraBox; 23.01.2010 в 16:51..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ