PHP - her sanal konak başına farklı open_basedir

2 Cevap apache

Hi I've came across on this problem, I have a sever running apache and php. We have many virtual hosts but we've noticed that a potentially malicious user could use his web space to browse other user's files(via a simple php script) and even system files, this could happens due to the php permissions. A way to avoid it is to set the open_basedir var in php.ini, yhis is very simple in a single host system, but in case of virtual hosts there would be a basebir per each host.

Ho Ben her kullanıcı / ana bilgisayar başına dis basedir ayarlayabilirsiniz? talep edilmiştir php dosyasının apache hereditate php ayrıcalıkları bildirmek için bir yol var

E.G. /home/X_USER/index.php has as owner X_USER, when apache read the file index.php it checks its path and owner, simply I'm looking for a system set php basedir variable to that path.

Thank in advance Lopoc

2 Cevap

Bu php_admin_value Apache yönergesi kullanarak bir dizin başına temelinde open_basedir ayarlamak mümkündür.

Örnek manual:

<Directory /docroot>
  php_admin_value open_basedir /docroot 
</Directory>

Re your comment: evet, harici komutları tarafından open_basedir etkilenmez - ls / bu haklar ile yapılır çağrılırken kullanıcı hesabı PHP (genellikle ([{adında altında çalışır 3)]} veya benzeri). Bildiğim kadarıyla, o open_basedir dış komutları genişletmek mümkün değildir.

Bu durumda, ben aradığınız koruma tür normal bir Apache / PHP kurulumu mümkün olduğunu sanmıyorum. Belki yakın geliyor tek şey running Apache in a chroot jail. Ben bu yüzden bu konuda bir şey söyleyemem bu kendim yapmadım - sen kazmak ve belki de bu konuda özel bir soru sormak gerekiyor.

Sen Apache yapılandırma dosyasını kullanarak birçok php.ini ayarlarını yapabilirsiniz.

See these related pages from the PHP manual: - http://php.net/manual/en/configuration.changes.php - http://www.php.net/manual/en/ini.core.php#ini.sect.path-directory - http://www.php.net/manual/en/configuration.changes.modes.php