ПРОЕКТЫ 


  АРХИВ 


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: чтение чужих файлов: не стоит патчить



On 28.11.2011 14:53, Dmitry E. Oboukhov wrote:

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

да, это нужно для того, чтобы закрыть возможность
пользователям shared hosting`а получить чужой конфиг.

но это не закрывает эту возможность. пользователи современных
хостингов могут использовать для этой цели помимо ninx: php, perl,
просто CGI итп

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

если CGI скрипты запускаются с правами пользователя-владельца
файлов - он через них не сможет получить доступ к чужим файлам,
куда может доступиться только другой пользователь и веб-сервер.

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

если "индивидуальный вебсервер" - это уже не будет shared hosting.

ну а shared hosting отдающий только статику нынче не является
хостингом. туда никакой клиент не пойдет.

очень многие shared hosting`и для экономии ресурсов отдают статику через nginx напрямую, без двойного проксирования статики через апач.

и если кто-то делает ln -s /path/to name а потом читает name как
статику, он же может сделать:

     open my $fh, '<', /path/to;
     print "Content-Type: application/octet-stream\n\n";
     print $_ while<$fh>;

пользователь не имеет прямого доступа к этим чужим файлам.
только nginx и apache. в apache можно закрыть "удобные пути"
получения доступа к чужим файлам, а в nginx - нет такого способа.

а костыли вида "не пойдет по симлинку" - лишь закрытие одного из сотен
путей

все остальные "удобные пути" можно закрыть корректной настройкой apache,
FollowSymLinks, SymLinksIfOwnerMatch, php_admin_value open_basedir
и корректной настройкой прав доступа к каталогам пользователей.

Ну и как закрыть вышеприведенный путь настройкой апача? не давать
пользователю shared-хостинга юзать динамический контент? и сколько
пользователей будет завтра на этом хостинге?

наверное этот вопрос про апач Вам следует задать в списке рассылки
для пользователей дебиана. думаю, что там есть и те, кто знает ответ
на этот Ваш вопрос. в этом списке рассылки по nginx вопросы корректной
настройки apache+php для shared hosting`а наверное являются оффтопиком.

--
Best regards,
 Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.