Portál AbcLinuxu, 9. května 2025 00:29

Dotaz: Apache2, PHP a zabezpečení "zevnitř"

12.4.2005 17:10 baracuda | skóre: 8
Apache2, PHP a zabezpečení "zevnitř"
Přečteno: 1413×
Odpovědět | Admin
mam maly webovy server zatim jsem ho pouzival sam pro svoje aplikace. ted ovsem bch chtel poskytnout kapacitu serveru i dalsim lidem a dostal jsem se k problemu jak zabezpecit server pred tzv "utokem zevnitr" soubory serveru muzu zabestecit pomoci zabezpeceni FS ale adresare documentrootu virtualnych webu musi byt citelne(nekdy i zapisovatelne) poro apache a PHP.

jelikoz server ma jedinou verejnou IP a vsechny virtual hosty se budou volat pomoci mena (z pozadavku) neni mozne poustet instance webserveru pod urcityimi uzivatelkymi jmeny a tudiz vtyto adresare nlze chranit nastvenim pristupovych prav FS mohl by mi nekdo poradit nebo nasmerovat jak se ubirat ? dekuji.

PS. slysel jsem neco jako upravit zrojove kody PHP a znovu ho zkompilovat z nejakyma omezenima (ale pod linuxem a v c jsem jeste nic neprogramoval)

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.4.2005 17:43 Vlastimil Ott | skóre: 66 | blog: Plastique | Opava
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Odpovědět | | Sbalit | Link | Blokovat | Admin
Upravil jsem trochu titulek, aby lépe vyjadřoval problém. Nepoužívejte pls velká písmena, je to stejně zbytečné. Spíš do titulku přesně uveďte svůj problém. Díky.
Práce: Liberix, o.p.s. | Blog: OpensourceBlog.cz | Online kurz Zlatý WordPress
12.4.2005 17:55 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Odpovědět | | Sbalit | Link | Blokovat | Admin
Moc (vlastně vůbec) nechápu na co se ptáte, ale tak na 90 procent bych řekl, že odpověď najdete v manuálu, kapitola Security. Prostudujte a pak se zkuste zeptat ještě jednou.
12.4.2005 18:51 baracuda | skóre: 8
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
dekuji za upravu titulku (mate pravdu ze je to vystiznejsi )

ad )kapitola Security problem je take hlavne v me (Ne)znalosti anglictiny
12.4.2005 19:09 baracuda | skóre: 8
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"

ad) security konkretne zde se vetsino dle meho chapani popisuje jak bzpecne psatPHP skript ale neresi to nasledujici problem ! mam virtualhosty pro jednoduchost 2

jedn ma document root /var/www/domena1 a druhej /var/www/domena2

Oatazka zni jak zabranit php scriptu pustenem v adresari domena1 manipulovat(cist/zapisovat data)v adrasrari /domena2kdyz jsou vyrtual hosti apache definovny takto (kuli jene IP)(nebudu uvadet priklad definice pres db )

 
VirtualHost 81.25.32.29
    DocumentRoot /var/www/domena1
    ServerName domena1
    ErrorLog logs/d1-error_log
    CustomLog logs/d1-access_log common
/VirtualHost

VirtualHost 81.25.32.29
    DocumentRoot /var/www/domena2
    ServerName domena2
    ErrorLog logs/d2-error_log
    CustomLog logs/d2-access_log common
/VirtualHost

 

12.4.2005 19:14 jm
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Co si trebi precist neco o safe mode?
12.4.2005 19:56 baracuda | skóre: 8
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
ad) safe mode bud tomu vubec nerozumim nebo mi nedoslo oco si mi tim chtel naznacit ale safe mode dle meho nazoru(mozna mylneho)kontroluje opravneni jestli je spustenej proces(apache) vlastnikem souboru ci nikoliv coz by v mem pripade asi nefungovalo protoze vlastnikem adresare domena1 je user domena1 a vlasntikem spousteneho procesu je uzivatel HTTP v tomdle oboru jsem zacatecnik a nerad bych podcenil zabazpeceni.
12.4.2005 19:59 Martin Tůma | skóre: 39 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"

Myslíš tuhle část:

...The PHP safe mode is an attempt to solve the shared-server security problem. It is architecturally incorrect to try to solve this problem at the PHP level...

;-)

Každý má právo na můj názor!
12.4.2005 20:03 baracuda | skóre: 8
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
jj toto jem myslel lepereceno ma znalost anglictiny je hodne mala a ta to vetsinou pochopim asi mylne ale toto neni fylozoficka diskuze nevedel by nekdo treba konkretne kus konfiguraku ci neco podovneho ?
9.6.2005 23:57 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Kristova noho! "Fylozoficka"? To je asi nejaky zmrseny pojem převzatá z biologie, že? :-( Člověče, já taky občas napíšu nějakou blbost, ale čeho je moc, toho je opravdu ... moc!
12.4.2005 20:08 jm
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Ano, muzes vymyslet neco lepsiho - napr. zprovoznit per-user MPM v Apachi tak, aby to kazdou chvili nepadalo, nebo se matlat s neuveritelne pomalym CGI, nebo holt pouzit safe mode jako vsichni ostatni a neresit nesmrtelnost chrousta.
12.4.2005 20:19 baracuda | skóre: 8
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
das teda safemod nastavit tak aby platil u vseho krome urciteho jistych vyjimek(aplikaci ktere by v safe modu 100% nefungovali spravne pac upravujou nebo pristupujouou k souborum ktere jim stoprocentne nepatri )webova administrace nejakych jinch služeb
9.6.2005 18:46 jm
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Ano, nastaveni lze upravovat i pro jednotlive virtual hosty.
9.6.2005 19:11 Bernie | skóre: 9 | blog: Bernie's Blog
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Je mozne mit ruzne nastaveni php pro jednotlive virtualhosty u name-based hostingu? Pokud ano, muzete me nakopnout, jak na to? Vzdycky me udivovalo, ze nektere hostingy nabizeji zapnuty/vypnuty safe_mod, podle potreby zakaznika...
9.6.2005 22:43 Jarek Šeděnka
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
v Apache je mozne upravovat hodnoty pro PHP pomoci direktiv
php_value PROMENNA HODNOTA
php_flag PROMENNA BOOLEAN
(pro binarni hodnoty), nebo jeste lepe
admin_php_value a 
admin_php_flag
muzete to dat treba mezi
< Directoty /nejaky/adresar > < /Directory >
10.6.2005 09:11 j3nda | skóre: 14 | ostrava/brno
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Odpovědět | | Sbalit | Link | Blokovat | Admin
zdravim, tento problem resi opravu zapnuty safe_mode s pomoci ruznych php featurek ktere se zapnou, napr:
<VirtualHost>
...apache config-like-featurky...

php_admin_value safe_mode 1
php_admin_value open_basedir "/home/wwww/virtualhost"
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@domena.cz"
</VirtualHost>
sendmail_path je pouzita pro mailer, ktery se pro vsechny odchozi emaily tvari jako info@domena.cz namisto aby v emailech bylo: <Return-Path: apache@localhost> co jsem vsak zaznamenal, tak pokud si nejaky uzivatel vytvori nejaky web, kde je umoznen upload s tim, ze ten adresar je verejne pristupny, tj. neda tam .htaccess (deny from all), tak mu muze nekdo obejit admin sekci, prip. admin tam vubec neni. tak nekdo z inetu tam nahraje libovolny php kod (ktery muze/nemusi vyuzivat nejaky php exploit, napr cURL apod) a ten potom spusti pres web a muze zneuzit prostredku serveru. resil nekdo podobnou situaci:
- nekolik virtualhostu (zapnuty safemod, open_basedir)
- uzivatele maji aplikace v php na upload fotek (napr)
Q: jak jednoduse zajistit .htaccess pro adresare se zapisem pro apache? ja to resim cronem a checkuju ty adresare a delam v nich .htaccess, ale to je drsne reseni vuci tem aplikacim. holt: nekteri pisou nebezpecne aplikace...
___---==~[ uxunilcba | baclniuxu ]~==---__sevrer_pnly_liunx-lkie_hcaricku__/libGDX-rulez-the-W0R7D!___
11.6.2005 15:55 jirik3
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Odpovědět | | Sbalit | Link | Blokovat | Admin
Přidávám svůj problém - Kvóty Zapnutý safe_mode tedy řeší spouštění skriptů. Ale pokud nějaký soubor pomocí php vytvořím nebo uploaduju, vlastníkem toho souboru se stane uživatel nobody (pokud je v httpd.conf "User nobody"). Jde to nějak udělat, aby vlastníkem nového souboru byl stejný uživatel, jako vlastník skriptu, který soubor vytvořil?

Zřejmě bych mohl rovnou nechat všem klientům stejného uživatele a použít open_basedir (nevím, jestli to chápu správně). Ale potřebuji mít pro každého klienta zvlášť uživatele kvůli diskovým kvótám. Nebo snad jde v Linuxu nastavit kvóta ne na uživatele a disk, ale např. jednoduše jen na adresář bez ohledu na uživatele? Tohle jsem nikde nenašel.

Problém by asi řešilo i nějaké nastavení výchozího vlastníka souborů pro daný adresář. Umíte někdo toto vyřešit? Díky
13.6.2005 13:20 jirik3
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Nikdo neví? :/
13.6.2005 13:24 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Možná kdybys položil samostatný dotaz, tak se dočkáš odpovědi...
13.6.2005 14:14 jirik3
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
No to jsem už udělal a byl jsem odkázán sem :) Zkusím znovu ...
14.6.2005 14:17 Roman
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
suphp

R.
14.6.2005 10:34 rich
Rozbalit Rozbalit vše Re: Apache2, PHP a zabezpečení "zevnitř"
Odpovědět | | Sbalit | Link | Blokovat | Admin
toto nabizi primo apache... http://httpd.apache.org/docs-2.0/mod/perchild.html#assignuserid

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.