www-uprawnienia danych?
Więc mam katalog w /var / www (o nazwie cake) i muszę zezwolić www-data, aby do niego pisać, ale chcę również do niego pisać (bez konieczności używania sudo). Boję się zmienić uprawnienia na 777 w przypadku, gdy jakiś inny użytkownik na moim komputerze (lub haker) próbuje zmodyfikować pliki w tym katalogu. Jak mogę zezwolić na dostęp tylko dla siebie i danych WWW Apache?
2 answers
sudo chown -R yourname:www-data cake
Then
sudo chmod -R g+s cake
Pierwsze polecenie zmienia właściciela i grupę Drugie polecenie dodaje atrybut s, który zachowa nowe pliki i katalogi w cake o tych samych uprawnieniach grupy
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-03 17:46:23
Jak podano w artykule autorstwa Slicehost :
Konfiguracja użytkownika
Zacznijmy więc od dodania głównego użytkownika do grupy użytkowników Apache:
sudo usermod -a -G www-data demo
Dodaje użytkownika 'demo' do grupy 'www-data'. Upewnij się, że używasz zarówno opcje-a, jak i-G z Komendą usermod pokazaną powyżej.
Musisz się wylogować i zalogować ponownie, aby włączyć grupę zmiana.
Sprawdź teraz grupy:
groups ... # demo www-data
Więc teraz jestem członek dwóch grup: My own (demo) I The Apache group (www-data).
Konfiguracja folderu
Teraz musimy upewnić się, że folder public_html jest własnością głównego użytkownika (demo) i jest częścią Grupy Apache (www-data).
Ustawmy to:
sudo chgrp -R www-data /home/demo/public_html
Ponieważ mówimy o uprawnieniach, dodam szybką notkę dotyczącą polecenie sudo: dobrym nawykiem jest używanie ścieżek bezwzględnych (/home / demo / public_html) jak pokazano powyżej, a nie ścieżki względne (~/public_html). Zapewnia, że sudo jest używane we właściwym miejsce.
Jeśli masz folder public_html z dowiązaniami symbolicznymi to bądź ostrożnie z tym poleceniem, ponieważ będzie podążać za dowiązaniami symbolicznymi. W tych przypadki działającego folderu public_html, Zmień każdy folder ręcznie.
Setgid
Jak na razie dobrze, ale pamiętaj, że polecenie, które właśnie podaliśmy, dotyczy tylko istniejące foldery. A co z czymś nowym?
Możemy ustawić własność tak, aby wszystko co nowe było również w "www-dane" Grupa.
Pierwsze polecenie zmieni uprawnienia dla public_html katalog zawierający bit "setgid":
sudo chmod 2750 /home/demo/public_html
, które zapewnią, że wszystkie nowe pliki otrzymają grupę 'www-data'. Jeśli masz podkatalogi, będziesz chciał uruchomić tę komendę dla każdego podkatalog (ten typ uprawnień nie działa z '- R'). Na szczęście nowe podkatalogi będą tworzone z bitem 'setgid' Ustaw automatycznie.
Jeśli potrzebujemy aby umożliwić dostęp zapisu do Apache, do katalogu uploads na przykład ustaw uprawnienia dla tego katalogu w następujący sposób:
sudo chmod 2770 /home/demo/public_html/domain1.com/public/uploads
Uprawnienia muszą być ustawione tylko raz, ponieważ nowe pliki będą automatycznie przypisać właściwą własność.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-18 22:14:40