ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re[2]: nginx + php-fastcgi + GET / ;)


  • To: Вова <nginx-ru@xxxxxxxxx>
  • Subject: Re[2]: nginx + php-fastcgi + GET / ;)
  • From: Sergey Shepelev <temotor@xxxxxxxxx>
  • Date: Thu, 24 May 2007 14:22:53 +0400
  • Dkim-signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:date:from:x-mailer:reply-to:x-priority:message-id:to:subject:in-reply-to:references:mime-version:content-type:content-transfer-encoding; b=cTXeS8iJyUL6gNFFHItJfxb/bd5kxklVkdjsqq0RsjuDywgX3sYvPD9CxjZfHCZXHpEB8Y5ENUZSS7TFlvHJ60Dp+2MRQgbu9BKVIO+5JgXLhhzicM9Uv5CKU/CzrbdLsX7p0RPSFBfgu/sf1zxrw3ELFPteHKH8BB12uYYvgH8=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:date:from:x-mailer:reply-to:x-priority:message-id:to:subject:in-reply-to:references:mime-version:content-type:content-transfer-encoding; b=b60lVdxwgs6EV/Bnj37XTuAvlwo3lWKFXUfgMV9YV1TcbVf0TU31s50NSTJJcQS93Hb2HITYvHjrStB5Vd8Y+2I7hGu6/0kmn/rw8bqiKyEPbtQaWTHqotggaMETNoz2UJQwdVf/bR+BeBTPWF72q9m1FaQWmJ82TzQKizYHH/I=
  • In-reply-to: <46550FE3.1080603@xxxxxx>
  • References: <E1HqPzU-000Gl2-00.pwr-mail-ru@xxxxxxxxxxxx> <4655094B.7070102@xxxxxx> <20070524034935.GB2618@xxxxxxxxxxxxx> <46550FE3.1080603@xxxxxx>

Здравствуйте (Hello).

 Это самая обычная проблема shared-хостинга.
 Я решил ее с помощью ACL (access-control lists).

drwxrwx---*   2   /home        1024   дата    root  wheel
drwxr-x---*   2   /home/user1  512    дата    usr1  usr1
drwxr-x---*   2   /home/user2  512    дата    usr2  usr2
...

getfacl /home
#file:home
#owner:0
#group:0
user::rwx
user:www:--x
group::rwx
mask::rwx
other::---

getfacl /home/user1
#file:user1
#owner:1001
#group:1001
user::rwx
user:www:r-x
group::r-x
mask::rwx
other::---

 PHP/FastCGI выполняется отдельным процессом от каждого юзера с
 помощью spawnfcgi из пакета lighthttpd.
 nginx выполняется от юзера www, и таким образом имеет права на чтение
 статики, но не имеет даже прав на чтение списка директорий в /home -
 уж на совсем страшный случай.

 Про то как начать использовать ACL я узнал на http://opennet.ru/ и
 вам рекомендую, хотя, конечно, источники у всех свои.

 P.S.: Кроме этого решения есть еще патч ядра, вы можете разрешить
 юзеру nginx иметь доступ там, где нет chmod o+rx. Поводы не
 пользоваться этим способом для меня очевидны.

 P.P.S.: Ваши вопросы не совсем касаются специфики именно nginx,
 поэтому вы, наверное, попали в ту же ситуацию, что и я год назад,
 когда пришлось вдруг изучать администрирование сервера на FreeBSD и
 настройку shared hosting. Поэтому какие-то общие схемы я бы
 посоветовал искать на том же OpenNET, а конкретные детали готов
 обсудить в аське 145-542-767.

-- 
С уважением (Best regards),
 Шепелев Сергей Александрович
 (Sergey A. Shepelev).

--
История переписки (conversation history):

>>> И всетаки пока непонятно, как решить эту проблему...
>>> Без установки на скрипт прав 644...
>>>     
>> Добавить пользователя www-data в группу wwwsite.
>>
> Тогда теоретически пользователь wwwsite1 сможет читать искодный код 
> скриптов пользователя wwwsite2. (При наличии уязвимостей в nginx, php)




 




Copyright © Lexa Software, 1996-2009.