Portál AbcLinuxu, 10. května 2025 23:00

Dotaz: Práva souborů - CHOMD nastavený pro APACHE

1.11.2011 13:05 Troppau
Práva souborů - CHOMD nastavený pro APACHE
Přečteno: 697×
Odpovědět | Admin
Zdravím Vás
Na čistý server jsem nahrál přes FTP prestashop.
A už tady je první zrada, všechny soubory a složky jsou v CHMOD 755, kvůli instalace musím ručně všem změnit na odpovídající CHOMD se zápisem.
Instalace proběhne,ale potom potřebuji přepsat některé soubory a ouha, některé soubory mají CHOMD 0644 s právama pro apache (to zjistím v plesku, prohlížeči souborů). Jak tyto práva mohu změnit? a jak zabránit tomu aby vznikala?

Díky moc Dušan
Everytime Beginner

Řešení dotazu:


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

Odpovědi

1.11.2011 13:50 NN
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Odpovědět | | Sbalit | Link | Blokovat | Admin
Prava se z niceho nic neprepisuji, takto to nefunguje..

NN
1.11.2011 14:12 Troppau
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Spíš čekám, že někde v nastavení se nastavuje jaká budou globální práva v dané situaci. Máte někdo nápad kde se to dá nastavit?
Vycházím ze zkušenosti, že na klasickém hostingu jsme v podstatě nemusel nikdy práva složek měnit. a teď na čistém dedik serveru ano.

Pomocí Bitvise jsme sprovoznil SSH FTP (nebo aspoň tak to funguje, takže to bude pro mne torochu jednodušší nastavování :))
Everytime Beginner
1.11.2011 14:29 l4m4
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Pokud proces vytváří soubor s nějakými právy, tak systémové nastavení (umask) může tato práva pouze dále omezit.
1.11.2011 14:48 Troppau
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Díky za tip.
Já bych ale radši začal tím, že všechny soubor a složky, které nahraji přes ftp mají práva třeba CHMOD 755
Everytime Beginner
1.11.2011 15:03 Troppau
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Tak jsme to našel v /etc/bashrc
ale potřeboval bych to rozkódovat:

if [ $UID -gt 99 ] && [ "`id -gn`" = "`id -un`" ]; then
umask 002
else
umask 022
fi

co má být ta první podmínka?
Everytime Beginner
1.11.2011 18:05 l4m4
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Asi nechápu dotaz. Je problém s tím, jak soubory ukládá FTP? Nebo s čím? Nejde to tam dostat inteligentněji, tedy včetně práv, nebo alespoň tam ftpnout tar a rozbalit?

První podmínka je test na ne-systémového uživatele, kde se předpokládá, že systémoví mají uid do 100 (což může být problém udržet, desktopová distra dnes raději začínají s uživatelskými uid od 1000...).
1.11.2011 20:20 Troppau
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Asi nechápu dotaz. Je problém s tím, jak soubory ukládá FTP? Nebo s čím? Nejde to tam dostat inteligentněji, tedy včetně práv, nebo alespoň tam ftpnout tar a rozbalit?

První podmínka je test na ne-systémového uživatele, kde se předpokládá, že systémoví mají uid do 100 (což může být problém udržet, desktopová distra dnes raději začínají s uživatelskými uid od 1000...).
mno, teď na mne mluvíte zase španělsky vy :)
nahrát to tam můžu několika způsoby upload rozbaleného webu = Práva 002, nebo 022
nahrát zabalený web a rozbalit= tady teda nemám zjištěné, jaká práva ve skutečnosti tady budou, ale rozhodně nejsou v pořádku...
celý problém je v tom, že některé soubory (netuším proč) jsou spojeny s uživatelem apache a já jim nemůžu změnit práva, smazat, přepsat...
Distribuce CentOS je podle mne optimalizovaná pro web server, je to standardní instalace od OVH.

Jsme opravdu začátečník, takže v tom pořád plavu, ale začíná mne to bavit.
Everytime Beginner
Řešení 1× (Troppau (tazatel))
2.11.2011 08:49 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Treba si ujasniť situáciu. Vo všeobecnosti platí:
  • užívateľ, ktorý nie je root, môže meniť prístupové práva len súborom, ktoré vlastní. (root môže všetkým)
  • vlastníkom novovzniknutého súboru je užívateľ, ktorého proces ten súbor vyrobil
  • prístupové práva novovzniknutého súboru ovplyvňuje umask
  • (samotný) zápis do súboru, ktorý už existoval nemení jeho vlastníka ani prístupové práva
  • subory vyrobené prihlásením sa na ftp server a prenesením súboru by mali mať vlastníka toho užívateľa, ktorý bol použitý pre prihlásenie sa na ftp server
  • ak sa nemýlim, tak 'chmod' nie je priamo súčasťou ftp protokolu. Server môže ponúknuť vykonanie nejakého príkazu na serverovej strane, ale z bezpečnostných dôvodov to býva spravidla zakázané.
  • tar má parameter -p, ktorý hovorí, že majú byť zachované prístupové práva. Predpokladom ale asi je, že buď id alebo meno (neviem ktoré) užívateľa existuje na oboch systémoch rovnaké
  • prístupové práva (presnejšie skupinu) môžu ešte ovplyvniť prístupové práva adresára, v ktorom súbor cez ftp vyrábaš a to za predpokladu že ten adresár má nastavený 's' bit
Na tvojom mieste by som skúsil použiť commandline klienta na prenesenie jedného súboru - to aby nerobil nič "sám od seba" - a všimol si prístupové práva adresára, kde súbor vyrobíš a práva novovyrobeného súboru. Vyskúšal by som tiež či server povolí príkaz 'chmod' cez ftp. A ak máš prístup, pozrel by som tiež aký umask má nastavený ftp server vo svojom konfiguráku.
2.11.2011 09:12 Troppau
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Treba si ujasniť situáciu. Vo všeobecnosti platí:
  • užívateľ, ktorý nie je root, môže meniť prístupové práva len súborom, ktoré vlastní. (root môže všetkým)
  • vlastníkom novovzniknutého súboru je užívateľ, ktorého proces ten súbor vyrobil
  • prístupové práva novovzniknutého súboru ovplyvňuje umask
  • (samotný) zápis do súboru, ktorý už existoval nemení jeho vlastníka ani prístupové práva
  • subory vyrobené prihlásením sa na ftp server a prenesením súboru by mali mať vlastníka toho užívateľa, ktorý bol použitý pre prihlásenie sa na ftp server
  • ak sa nemýlim, tak 'chmod' nie je priamo súčasťou ftp protokolu. Server môže ponúknuť vykonanie nejakého príkazu na serverovej strane, ale z bezpečnostných dôvodov to býva spravidla zakázané.
  • tar má parameter -p, ktorý hovorí, že majú byť zachované prístupové práva. Predpokladom ale asi je, že buď id alebo meno (neviem ktoré) užívateľa existuje na oboch systémoch rovnaké
  • prístupové práva (presnejšie skupinu) môžu ešte ovplyvniť prístupové práva adresára, v ktorom súbor cez ftp vyrábaš a to za predpokladu že ten adresár má nastavený 's' bit
Na tvojom mieste by som skúsil použiť commandline klienta na prenesenie jedného súboru - to aby nerobil nič "sám od seba" - a všimol si prístupové práva adresára, kde súbor vyrobíš a práva novovyrobeného súboru. Vyskúšal by som tiež či server povolí príkaz 'chmod' cez ftp. A ak máš prístup, pozrel by som tiež aký umask má nastavený ftp server vo svojom konfiguráku.
Tomu říkám skvělá odpověď. Díky Celý problém byl tady:
  • prístupové práva novovzniknutého súboru ovplyvňuje umask
toto jsem již nějak opravil viz předchozí post
Ještě by mne zajímalo jak zjistím jaký FTP server je instalovaný a kde má definované data pro CHMOD
Everytime Beginner
2.11.2011 13:04 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: Práva souborů - CHOMD nastavený pro APACHE
Ještě by mne zajímalo jak zjistím jaký FTP server je instalovaný

Buď sa predstaví sám pri pripojení:
$ ftp mojserver
Connected to mojserver (10.0.0.1).
220 (vsFTPd 2.2.2)
...
alebo musíš mať možnosť prihlásiť sa aj inak ako len cez ftp. Ak máš, tak môžeš skúmať výstup z ps, alebo netstat.
a kde má definované data pro CHMOD
Neviem, čo presne máš tým na mysli. Ak myslíš hodnotu umask, tak tá by mohla byť v konfiguračnom súbore. Kde ten súbor je, ako sa volá a ako presne je to tam zapísané - to závisí od toho, aký ftp server to je.

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.