abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 17:22 | Nová verze

    Byl vydán Linux Mint 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    dnes 12:55 | IT novinky

    Čínská společnost Tencent uvolnila svůj AI model HunyuanWorld-Voyager pro generování videí 3D světů z jednoho obrázku a určené trajektorie kamery. Licence ale nedovoluje jeho používání na území Evropské unie, Spojeného království a Jižní Koreje.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Komunita

    Blender Studio se spojilo s kapelou OK Go a výsledkem je videoklip k písni Impulse Purchase. Stejně jako samotný 3D software Blender je i ve videoklipu použitý animovaný chlápek open source. Kdokoli si jej může stáhnout a upravovat.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Komunita

    Zig Software Foundation stojící za programovacím jazykem Zig publikovala finanční zprávu za rok 2024. Současně s prosbou o finanční příspěvek.

    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Nová verze

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za srpen (YouTube). Vypíchnuta je podpora Tabulek Google, implementace Gamepad API a Cookie Store API nebo také podpora WebGL na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 20:44 | Komunita

    openSUSE Leap 16, včetně Leap Micra 6.2+, nově nabízí 24 měsíců podpory pro každé vydání. To je dva roky aktualizací a stability, což z něj činí nejdéle podporovanou komunitní distribuci vůbec. Leap se tak stává ideální platformou pro všechny, kdo hledají moderní, stabilní a dlouhodobě podporovanou komunitní Linux distribuci.

    lkocman | Komentářů: 0
    včera 16:33 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal dne 3. 9. 2025 VAROVÁNÍ před hrozbou v oblasti kybernetické bezpečnosti spočívající v předávání systémových a uživatelských dat do Čínské lidové republiky a ve vzdálené správě technických aktiv vykonávané z území Čínské lidové republiky. Varováním se musí zabývat povinné osoby podle zákona o kybernetické bezpečnosti.

    Ladislav Hagara | Komentářů: 27
    včera 11:55 | IT novinky

    Americká internetová společnost Google nemusí prodat svůj prohlížeč Chrome ani operační systém Android. Rozhodl o tom soud ve Washingtonu, který tak zamítl požadavek amerického ministerstva spravedlnosti. Soud ale firmě nařídil sdílet data s jinými podniky v zájmu posílení konkurence v oblasti internetového vyhledávání. Zároveň Googlu zakázal uzavírat dohody s výrobci mobilních a dalších zařízení, které by znemožňovaly

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 11:33 | Humor

    Prvního září ozbrojení policisté zatkli na na londýnském letišti Heathrow scénáristu a režiséra Grahama Linehana, známého především komediálními seriály Ajťáci, Otec Ted nebo Black Books. Během výslechu měl 57letý Graham nebezpečně zvýšený krevní tlak až na samou hranici mrtvice a proto byl z policejní stanice převezen do nemocnice. Důvodem zatčení bylo údajné podněcování násilí v jeho 'vtipných' příspěvcích na sociální síti

    … více »
    Gréta | Komentářů: 99
    včera 10:22 | Pozvánky

    Studentská dílna Macgyver zve na další Virtuální Bastlírnu - pravidelné online setkání všech, kdo mají blízko k bastlení, elektronice, IT, vědě a technice. Letní prázdniny jsou za námi a je čas probrat novinky, které se přes srpen nahromadily. Tentokrát jich je více než 50! Těšit se můžete mimo jiné na:

    Hardware – Bus Pirate na ESP32, reverse engineering Raspberry Pi, pseudo-ZX-80 na RISC-V, PicoCalc, organizéry na nářadí z pěny nebo … více »
    bkralik | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (82%)
     (8%)
     (2%)
     (3%)
     (4%)
     (1%)
    Celkem 141 hlasů
     Komentářů: 11, poslední dnes 16:12
    Rozcestník

    suPHP - spouštění php skriptu pod UID skriptu

    30.8.2007 10:31 | Přečteno: 3211× | trable se serverem

    Nedávno jsem narazil na suPHP, je to výborná věc k zabezpečení servru. Jeho konfigurace není nijak složitá a nezaregistroval jsem ani žádné významné zpomalení.

    Riziko PHP

    Představme si, že máme webhostingový server a na něm máme spuštěný Apache pod UID 1, a tři klienty s UID 2,3,4.

    Každý z klientů má svůj vlastní prostor, kde má soubory s vlastním UID. Soubory nahrané z FTP se ukládají na server s tímhle UID. Problém, ale nastává, pokud vytvoříme nějaký soubor z PHP. Tenhle soubor se vytvoří pod UID Apache (UID 1) - mimo jiné musí mít do tohoto místa Apache povolení k zápisu.

    Tzn. že se soboru s UID 1 se můžou vyskytovat v prostorech všech klientů, kteří je můžou sami sobě měnit. Tohle se dá částečně vyřešit použitím starší direktivy v php safe_mode nebo použít open_basedir. Tohle ale akorát zabrání aby si klienti mezi sebou soubory měnili, ale soubory jsou vytvářeny pořád pod UID Apache. Což nám komplikuje například použití kvót (které jsou vázané na UID nebo GID).

    Co umí suPHP?

    suPHP je modul do Apache, který nahradí standartní mod_php. Skripty poté vytváří soubory pod svojím UID, nikoli pod UID Apache.

    Instalace suPHP

    Instaloval jsem suPHP na Ubuntu Server. Postup na Debianu bude velice podobný, možná úplně stejný.

    martin@tuxnak:~$ apt-cache search suphp
    libapache2-mod-suphp - Apache2 module to run php scripts with the owner permissions
    
    Nainstalujeme balíček
    martin@tuxnak:~$ apt-get install libapache2-mod-suphp
    
    Poté musíme aktivovat tenhle modul v konfiguráku Apache, přidáme tyto řádky
    LoadModule suphp_module /usr/lib/apache2/modules/mod_suphp.so
    <IfModule mod_suphp.c>
            AddHandler x-httpd-php .php .php3 .php4 .php5 .phtml
            suPHP_AddHandler x-httpd-php
            suPHP_Engine on
            suPHP_ConfigPath /etc/suphp/suphp.conf
    </IfModule>
    
    V Ubuntu stačí spustit
    martin@tuxnak:~$ ln -s /etc/apache2/mods-available/suphp.* /etc/apache2/mods-enbaled/
    Poté musíme zrušit v Apache mod_php. Zakomentujeme v konfiguráku tyhle řádky:
    LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
    
    V Ubuntu spustíme
    martin@tuxnak:~$ rm /etc/apache2/mods-enabled/php5.*
    

    Konfigurační soubor suPHP

    Nachází se se v /etc/suphp/suphp.conf

    Defaultně je nastavený dost konzervativně. Projdeme si všechny důležité konfigurační direktivy.

    [global]
    logfile=/var/log/suphp/suphp.log Cesta k logu
    loglevel=info Podrobnost logování
    webserver_user=www-data Nastavíme uživatele pod kterým běží apache
    docroot=/home Nastavíme adresář, ze kterého budou spouštěny skripty
    allow_file_group_writeable=false Zakáže aby skripty byli přepisovatelné skupinou.
    allow_file_others_writeable=false Zakáže aby byly skripty přepisovatelné, těmi kteří nejsou ani vlastníci a a ani nejsou ve skupině
    allow_directory_group_writeable=false To samé s adresáři
    allow_directory_others_writeable=false
    check_vhost_docroot=true Kontroluje jestli skript není mimo documentroot
    umask=0077 maska pro soubory vytvořené z php
    min_uid=100 Skripty s menším UID server nespustí a vyhodí chybu
    min_gid=100 To samé s GID
    [handlers]
    x-httpd-php=php:/usr/bin/php-cgi musíme nastavit handler - cestu k php interpretu
    

    Na závěr

    Je to první návod, který jsem zveřejnil. Možná někomu pomůže, ale nerad bych aby někoho popletl ještě víc, pokud bude někde chyba nebo vás napadá lepší řešení, napište prosím do komentářů.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    rADOn avatar 30.8.2007 13:25 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše UID indiana
    nemusi pak ale apache bezet pod rootem ?
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    Michal Fecko avatar 30.8.2007 13:26 Michal Fecko | skóre: 31 | blog: Poznámkový blog
    Rozbalit Rozbalit vše Re: UID indiana
    nemusi pak ale apache bezet pod rootem ?
    IMHO nie.
    30.8.2007 14:30 vatamer | skóre: 5 | blog: mavater | Brno
    Rozbalit Rozbalit vše Re: UID indiana
    Nic jsem neměnil, ale ps aux | grep apache, hlásí, že jeden daemon běži pod rootem :-)
    root     15121 16.0  7.5  31628 24236 ?        Ss   14:28   0:00 /usr/sbin/apache2 -k start
    www-data 15124  0.0  7.3  31628 23712 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
    www-data 15125  0.0  7.3  31628 23712 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
    www-data 15126  0.0  7.3  31628 23712 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
    www-data 15127  0.0  7.3  31628 23712 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
    www-data 15128  0.0  7.3  31628 23712 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
    
    
    30.8.2007 18:11 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: UID indiana
    to vzdy
    Hanička avatar 30.8.2007 14:31 Hanička | skóre: 3 | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    zrovna včera jsem suphp dala na svůj server, mám dvě připomínky... 1) mod_php není nutno zakomentovat, lze pak pro určité adresáře či složky suphp vypnout a používat modul. 2) suphp pak vlastně php skripty pouští přes cgi rozhraní, takže (u mne) to děla tak 25-30ms navíc.
    30.8.2007 18:13 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    presne tak, funguje to cez php-cgi a to je teda velka nevyhoda. znacne to spomaluje (teda absolutne nevhodne pre mass hosting) a taktiez nie vsetky skripty s tym funguju bezproblemovo (mam skusenosti, ze napr. Joomla ma problemy).
    30.8.2007 18:28 vatamer | skóre: 5 | blog: mavater | Brno
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    No a myslíte, že pro řešení sepsaného problému existuje elegantnější řešení jak suPHP? Jestli jo, tak aspoň naznačte, kterým směrem se ubírat :)
    30.8.2007 18:41 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    praveze (a bohuzial) dostatocne dobre riesenie neexistuje :(
    30.8.2007 18:48 phero | skóre: 17 | blog: techblog
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    kernel-level virtualization? V kazdym virtualu vlastni lehky web server s mod_php/fast_cgi ...
    30.8.2007 18:55 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    tak to by bolo po vykonnostnej stranke este horsie ako suPHP ;)
    30.8.2007 18:58 phero | skóre: 17 | blog: techblog
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    neřekl bych
    30.8.2007 19:26 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    ja teda ano, uz vidim ako na tom rozbehas 500 webov (co by si na jednom serveri s klasickym PHP prevadzkoval bez vacsich problemov).
    30.8.2007 20:02 vatamer | skóre: 5 | blog: mavater | Brno
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    Minimalne to bude o hodne narocnejsi na operacni pamet a to jak operacni tak i spravcovou :) Imho je to kanon na vrabce. SuPHP bych se na mass hostingu vubec nebal
    Jardík avatar 31.8.2007 19:17 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu

    Ano. Lighttpd. Pro každé stránky spustíte zvlášť démona v chrootu a poté jednoho na portu 80, který přes mod_proxy kontaktuje ty ostatní např. podle domény. Ale je to docela náročné na správu (v každém chrootu vlastní php + závislosti, ale vejdete se do 10 MB na "vhost").

    Není to můj nápad, ale nápad "cx".

    Věřím v jednoho Boha.
    31.8.2007 19:27 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    pozri toto vlakno
    31.8.2007 19:46 vatamer | skóre: 5 | blog: mavater | Brno
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    Hm a nároky na operační paměť?
    30.8.2007 20:24 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    suPHP je pomalý bazmek, mnohem lepší je správně nakonfigurovat klasické FastCGI.
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    30.8.2007 22:47 vatamer | skóre: 5 | blog: mavater | Brno
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    suPHP pomalý bazmek? Zajímavé, že jsem si toho nevšil...a FastCgi umožňuje to co suPHP?
    31.8.2007 09:19 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    kolko webov ti na tom bezi ?
    5.9.2007 01:46 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu
    suPHP skutečně je _extrémně_ pomalý bazmek. Podle mých testů je cca 10x - 16x pomalejší (podle druhu nasazení) než řešení s pomocí FastCGI + suExec, které je navíc mnohem flexibilnější. Prostě suPHP nebrat, je to hnus který by měl zemřít ošklivou smrtí.
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    31.8.2007 19:51 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: suPHP - spouštění php skriptu pod UID skriptu

    Už jsem to tu řešil, můžeš použít FastCGi se SuExecem a wrappery (to ti umožní i provozovat vedle sebe PHP4 a PHP5, i když PHP4 už patří do koše, spíš je to zajímavé na testování CVS PHP6), nebo, a to je podstatně jednodušší, mod_ruid. Vygoogli si to, jenom bacha na mpm-worker, jak popisuju tady, už se to delší dobu chystám postnout sem, ale nějak jsem se k tomu nedostal, zajímaly by mě totiž i vaše komentáře, snad brzo ...

    Snad to pomůže vyřešit daný problém, jinak podle vlastních testů je suPHP asi 15x pomalejší než mod_php s mpm-worker a asi 10x pomalejší než mod_php s mpm-prefork nebo s řešením FastCGI/SuExec, takže bych se ho na mass hosting určitě dost obával :/

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.