W tym artykule
Czym jest chmod?
chmod (change mode) to polecenie Unix i Linux ustawiajace uprawnienia plikow i katalogow. Kazdy plik w systemie Unix ma trzy kategorie uprawnien: wlasciciel, grupa i inni. Kazda kategoria moze niezaleznie otrzymac uprawnienia do odczytu, zapisu i wykonywania.
Zrozumienie chmod jest niezbedne do administrowania systemami, konfiguracji serwerow web i bezpiecznego zarzadzania plikami. Niepoprawne uprawnienia sa jedna z najczestszych przyczyn luk w bezpieczenstwie na serwerach Linux.
Jak dzialaja uprawnienia chmod
Uprawnienia moga byc wyrazone w dwoch notacjach: numerycznej (osemkowej) i symbolicznej. Notacja numeryczna uzywa trzech cyfr (np. 755).
- Odczyt (r = 4) — przegladanie zawartosci pliku lub listowanie wpisow katalogu
- Zapis (w = 2) — modyfikowanie zawartosci pliku lub dodawanie/usuwanie plikow w katalogu
- Wykonanie (x = 1) — uruchamianie pliku jako programu lub wchodzenie do katalogu za pomoca cd
Kazda cyfra to suma uprawnien: 7 = odczyt + zapis + wykonanie (4+2+1), 6 = odczyt + zapis (4+2), 5 = odczyt + wykonanie (4+1), 4 = tylko odczyt.
Wypróbuj za darmo — bez rejestracji
Oblicz uprawnienia chmod →Popularne wartosci uprawnien
Oto najczesciej uzywane wartosci chmod i ich typowe zastosowania.
- 755 (rwxr-xr-x) — standard dla plikow wykonywalnych i katalogow
- 644 (rw-r--r--) — standard dla zwyklych plikow
- 700 (rwx------) — prywatny katalog lub skrypt; tylko wlasciciel ma dostep
- 600 (rw-------) — prywatny plik jak klucze SSH; tylko wlasciciel moze czytac i pisac
- 777 (rwxrwxrwx) — pelny dostep dla wszystkich; prawie nigdy nie jest odpowiedni i stanowi zagrozenie bezpieczenstwa
Implikacje bezpieczenstwa
Zasada minimalnych uprawnien ma bezposrednie zastosowanie do uprawnien plikow: przyznawaj tylko minimalne uprawnienia niezbedne do prawidlowego dzialania.
Specjalne bity uprawnien dodaja kolejna warstwe: SUID, SGID oraz sticky bit na katalogach zapobiegaja usuwaniu cudzych plikow.
Wskazowki i najlepsze praktyki
Postepuj zgodnie z tymi wytycznymi, aby utrzymac bezpieczne uprawnienia.
- Katalogi potrzebuja uprawnienia do wykonania — bez niego uzytkownicy nie moga wejsc do katalogu
- Uzywaj rekurencyjnego chmod ostroznie — chmod -R 755 czyni wszystkie pliki wykonywalnymi; uzyj find z -type f i -type d osobno
- Ustaw domyslne wartosci umask — umask 022 tworzy pliki jako 644 i katalogi jako 755
Czesto zadawane pytania
Jaka jest roznica miedzy 755 a 777?
Przy 755 wlasciciel ma pelna kontrole, a grupa i inni moga tylko czytac i wykonywac. Przy 777 wszyscy maja pelna kontrole. Uzycie 777 prawie nigdy nie jest konieczne i stwarza powazne zagrozenie bezpieczenstwa.
Dlaczego katalogi potrzebuja uprawnienia do wykonania?
Bit wykonania na katalogu kontroluje mozliwosc jego przegladania. Bez uprawnienia do wykonania uzytkownik nie moze wejsc do katalogu. Dlatego katalogi maja zazwyczaj 755, a pliki 644.
Jakie sa domyslne uprawnienia dla nowych plikow?
Domyslne uprawnienia zaleza od ustawienia umask. Przy powszechnym umask 022 nowe pliki sa tworzone z uprawnieniami 644, a nowe katalogi z 755.