Práva souborů na WWW

Jan Houstek houstek na utf.mff.cuni.cz
Středa Duben 21 15:54:44 CEST 2004


On Wed, 21 Apr 2004, Dejma wrote:

> chtěl bych vědět, jakým způsobem řešit/řešíte kopírování www souborů na
> web servery.

No je to trochu problematicke a v realu se to resi vzdy dle konkretnich
potreb (navic je cas od casu treba delat ustupky).

> Mám apache a potrebuji do nej kopirovat projekty přes sambu i FTP. Pokud
> to kopiuji sambou - můžu nastavit force user a force group,

To neni uplne rozumne. Spis by tam pres tu sambu mel pristupovat urceny
uzivatel a soubory by pak vlastnil on.

> pokud FTP je majitel souborů uživatel www.

Stejne jako samba. Pokud chcete, aby ruzni uzivatele vlastnili ruzne
soubory, musite ftp ucet navazat na systemove ucty.

> Normálně jsou soubory majitele root pro čtení ostatním. Já však
> potřebuji apačem občas nějaký soubor vygenerovat a uložit do html
> publicu a prezentovat, a pak začíná maraton s permision denied. Pokud
> dám všechny adresáře 777 je to OK, ale mě se to nelíbí - nezdá se mi to
> dobré - opravte mě.

S apachem je to tezsi. Normalne bezi pod nejakym svym userem (www, apache,
www-data ...) a jediny zpusob, jak muze pouzivat jine UID je pres nejaky
suid CGI wrapper. Hledejte "suexec".

> Nejde mi o konkrétní radu, spíše o obecný způsob - jaký by měly mít
> soubory pro WWW práva a majitele.

To je jednoduche. Prava by mela byt takova, aby data mohl cist jen ten,
kdo je k tomu zmocnen (napr. ten http server) a modifikovat je take jen
ten, kdo je k tomu zmocnen (typicky ne http server az na presne dane
vyjimky, napr. adresare, kam nejake skripty zapisuji).

Problematicke to zacne byt v okamziku, kdy

- o obsah se stara vice lidi a maji ruzne pravomoci
- obsah ma castecne vytvaret/modifikovat samotny http server

> hledal jsem hledal, ale praktickou informaci zkušenost kolem této
> problematiky jsem nenašel

No muzete si zjistit neco o metodach rizeni pristupu v Unixu, sambe,
apachi, vasem FTP serveru atd., ale finalni reseni budete muset navrhnout
sam.

-- Honza Houstek


Další informace o konferenci Linux