Re: pld na hosting PHP - jak rozdzielacie klientów?

Arkadiusz Rdest weed w punkt.pl
Wto, 16 Gru 2008, 20:49:04 CET


Jacek Osiecki wrote:

> Jak Wy to robicie? Wiem że można np. zrobić wszędzie uruchamianie PHP jako
> CGI i ustawienie takich uprawnień żeby jeden user nie miał szans zajrzeć do
> innego, ale to się wiąże ze znacznym spowolnieniem działania PHPa na co
> raczej nie mogę sobie pozwolić.

1) php per user odpalane jako fast-cgi (mod_fastcgi + suexec).
    bardzo szybkie w dzialaniu, tylko zajmuje duuuzo pamieci.

    zaleta oprocz tego, ze usery nie musza chmodow 777 ustawiac,
    to jesli dany user ma kilka vhostow, to wszytkie dzialaja
    pod tym samym procesem php.

    dodatkowo w skrypcie odplajacym parser php nalozone limity
    ulimitem, zeby sie te parsery za bardzo nie rozhasały :)
    oczywicie limity w php.ini tez nalozne (max_execution_time)
    ale te ulimitowe lepiej sie sprawdzaja :)

    safe_mode oczywiscie wlaczony, bo w tej konfiguracji jego
    ustawienie nie ma zadnego znaczenia.


2) kazdy user ma osobny php.ini z miedzy innymi
    ustawiona inna sciezka na jego ~/ w open_basedir


3) zablokowana funkcja glob() w php, poniwaz nawet mimo wlaczonego
    openbasedir pozwala ona wylistowac pliki zposa openbasedir :)

http://lukasz.pilorz.net/2007/02/15/czytanie-zawartosci-katalogow-chronionych-open_basedir/


4)  lista zablokowanych funkcji jest dluzo dluzsza :)

disable_functions = 
dl,exec,shell_exec,system,passthru,popen,symlink,link,set_time_limit,proc_open,proc_close,posix_getp
wuid,openlog

     openlog dlatego, ze prostym skryptem w php moge ci wyslac do 
sysloga co tylko bede chcial, i w moment np. przepelnic dysk :)


4) jako serwer FTP pure-ftpd z ustawiana opcja chrooteveryone.


to chyba wszytko co pamietam w tamcie o ktory pytasz, czyli rozdzielenia 
katalogow userow. u mnie pod PLD sie sprawdza na serwerze z ponad 4k 
klientow i kilkunastoma tysiacami vhostow :) jak na razie wlamu na 
serwer nie bylo, albo go nie wykrylem :) bo wlamy na konta userow to sa 
i beda, ale coz poradzisz na beznajdziejnie napisane jportale, 
mamba-sramba i zajebiscie przemodowane phpbb by pszemo :)


-- 
  -[  net and sys admin  ]-[ Learn the facts and make up your own ]-
  -[ a.rdest()infomex()pl]-[ damn mind. That's why you have one.  ]-


Więcej informacji o liście dyskusyjnej pld-users-pl