Byl zveřejněn program konference Installfest 2026. Konference proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13. Vstup zdarma.
Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.
Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.
SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.
Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační
… více »PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují
… více »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í.
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).
suPHP je modul do Apache, který nahradí standartní mod_php. Skripty poté vytváří soubory pod svojím UID, nikoli pod UID Apache.
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 permissionsNainstalujeme balíček
martin@tuxnak:~$ apt-get install libapache2-mod-suphpPoté 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.soV Ubuntu spustíme
martin@tuxnak:~$ rm /etc/apache2/mods-enabled/php5.*
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
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ářů.
Tiskni
Sdílej:
nemusi pak ale apache bezet pod rootem ?IMHO nie.
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
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".
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 :/