Portál AbcLinuxu, 7. května 2025 05:52
Řešení dotazu:
chmod g+w -R /var/www/html
Pak je ještě jedna věc zvaná umask, tedy maska oprávnění nově vytvářených souborů. Pro takovýto setup je dobré nastavit webserveru masku z 0022 na 0002, tedy aby nové soubory měly povolen zápis skupinou. Predpokládám, že webserver už běží jako uživatel www-data, skupina www-data.
Asi však narazíš na to, že se ti budou uživatelé porůznu přetahovat o oprávnění, když jeden uživatel něco vytvoří a druhý to nebude moct upravit. Na to také pomůže nastavit umask.
Také se hodí ještě nastavit setgid bit adresářům, aby nové adresáře a soubory "dědily" skupinu nadřazeného adresáře: chmod g+s -R /var/www/html
usermod -a -G $skupina $uzivatel
?
rw-
na soubory a rwx
na adresáře, web server k souborům přistupuje jako ostatní s právem r--
resp. r-x
pro adresáře. Na adresáře je pak dobré nastavit sgid
bit, aby se dědila skupina z rodičovského adresáře.
Takže pak oprávnění mohou vypadat např. takhle:
drwxrwsr-x root www-edit web/Do
log
adresáře webového serveru bych nedával právo zápisu všem, ale jen uživateli, pod kterým běží webový server.
--o
, stačí pro --o
nastavit práva ---
(0) a web server se k souboru nedostane.
setfacl
a opravit tak práva.
~/tmp/acl % setfacl -d -m u:www-data:r . ~/tmp/acl % getfacl . # file: . # owner: filip # group: filip user::rwx group::rwx other::r-x default:user::rwx default:user:www-data:r-- default:group::rwx default:mask::rwx default:other::r-x ~/tmp/acl % touch /tmp/test ~/tmp/acl % mv /tmp/test ./ ~/tmp/acl % getfacl test # file: test # owner: filip # group: filip user::rw- group::rw- other::r--Vážně nemůžu editora webu nutit, aby po každé změně ještě nastavoval práva…
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.