Welcome! Log In Create A New Profile

Advanced

Re: Проблема с chroot в связке Nginx + PHP-FPM

mva
June 01, 2013 11:36PM
1) Не могли бы Вы включить более подробный логгинг? :) Да и попробовтаь
посмотреть в файле. (который error_log в nginx'е).
2) Я бы всё-таки посоветовал не слушать то, что написано в конфигах PHP
и не использовать их chroot, т.к. уже давно существует мнение, что
PHP'шный chroot это то, как безопасность НЕ НУЖНО организовывать.

А ещё, так, к слову, PHP'шный чрут требует чтобы временные директории,
директории для хранения сессий, директории с библиотеками и т.п. были
ВНУТРИ чрута. Что 1) тоже влияет на безопасность в худшую сторону, 2)
может являться причиной Ваших проблем.

Для справки, как (схематично, без реальных юзернеймов и портов) это
сделано у меня:


hosting ~mva % cat /etc/nginx/vhosts.d/s_username/site.ru
server {
include backends.d/configs/listen;

server_name site.ru www.site.ru;

root /srv/web/s_username/sites/site.ru/www;
index index.html index.htm index.php;

access_log
/srv/web/s_username/logs/site.ru/www/access.nginx.log;
error_log
/srv/web/s_username/logs/site.ru/www/error.nginx.log;

charset utf-8;
source_charset utf-8;

include security.d/bots;
include rewrites.d/errors;
include rewrites.d/static;

include fpm.d/s_username.conf;
}

hosting ~mva % cat /etc/nginx/fpm.d/s_username.conf
location ~ \.php$ {
fastcgi_pass 127.0.0.1:xxxxx;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}


hosting ~mva % grep include= /etc/php/fpm-php5.3/php-fpm.conf
include=/etc/php/pools.d/*.conf

hosting ~mva % grep include= /etc/php/fpm-php5.4/php-fpm.conf
include=/etc/php/pools.d/*.conf

hosting ~mva % grep include= /etc/php/fpm-php5.5/php-fpm.conf
include=/etc/php/pools.d/*.conf

hosting ~mva % cat /etc/php/pools.d/s_username.conf
[s_username]

listen = 127.0.0.1:xxxxx
listen.allowed_clients = 127.0.0.1

user = s_username
group = s_username

pm = dynamic
pm.max_children = 7
pm.start_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 3

php_admin_value[open_basedir] =
/srv/web/s_username/sites/:/tmp/:/usr/share/php
php_admin_value[disable_functions] =
eval,base64_decode,gzinflate,dl,exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source

Т.е. хосты поделены по юзерам и каждый юзер - отдельный системный юзер,
который использует свой инстанс php-fpm. При этом юзер может писать
только в /tmp и к себе в хомяк. Читать может - согласна проставленным в
системе правам. Например, /etc/shadow — не может:

s_username@hosting mva % cat /etc/shadow
cat: /etc/shadow: Отказано в доступе

s_username@hosting mva % ll -o /etc/shadow
-rw-r----- 1 root 2,2K июня 2 07:38 /etc/shadow


01.06.2013 20:59, Sferg пишет:
> Здравствуйте, господа.
>
> Недавно решил поднять веб-серверок для экспериментов. Остановился на связке
> Nginx 1.4.1 + PHP-FPM 5.4.4 + MySQL 5.5.31.
>
> Директория расположения сайтов у меня /home/kursk.dyndns.org/www,
> соответственно параметр chroot в /etc/php5/fpm/pool.d/www.conf у меня
> выглядит так:
>
> chroot = /home/kursk.dyndns.org/www
>
> а в /etc/nginx/sites-enabled/kursk.dyndns.org для работы с chroot прописана
> строчка:
>
> fastcgi_param SCRIPT_FILENAME /$fastcgi_script_name;
>
> Если разместить в /home/kursk.dyndns.org/www/ файл index.php со строчкой
>
> phpinfo();
>
> то всё прекрасно открывается. Но если залить тот же phpBB3, то всё время
> наблюдается белая страница (в php.ini прописан параметр display_errors=1).
> Если chroot убрать, то всё открывается нормально.
>
> В чём может быть проблема? Уже несколько дней бьюсь(((
>
> С уважением, Геннадий.
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,239746,239746#msg-239746
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>


_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Проблема с chroot в связке Nginx + PHP-FPM

Sferg June 01, 2013 09:59AM

Re: Проблема с chroot в связке Nginx + PHP-FPM

mva June 01, 2013 11:36PM

Re: Проблема с chroot в связке Nginx + PHP-FPM

Алексей Сундуков June 02, 2013 05:52AM

Re: Проблема с chroot в связке Nginx + PHP-FPM

Sferg June 04, 2013 06:30AM

Re: Проблема с chroot в связке Nginx + PHP-FPM

Oleg Motienko June 18, 2013 10:25AM

Re: Проблема с chroot в связке Nginx + PHP-FPM

VovansystemS June 02, 2013 04:04AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 119
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready