Utilia

Kalkulator chmod

Przeliczaj uprawnienia plików Unix między polami wyboru, zapisem ósemkowym (755) i symbolicznym (rwxr-xr-x), z setuid, setgid, sticky i gotowym chmod.

Uprawnienia
KlasaOdczyt (4)Zapis (2)Wykonywanie (1)
Właściciel (u)
Grupa (g)
Pozostali (o)
Bity specjalne

Polecenia

Liczbowe
Symboliczne
Tak jak w ls -l
Zmiana względna od {from}

Kto może co zrobić

    Typowe ustawienia

    Jak korzystać z kalkulatora chmod

    1. Zacznij od dowolnej postaci: zaznacz pola w tabeli Uprawnienia, wpisz tryb w polu Ósemkowo (np. 755 lub 4755) albo wklej ciąg taki jak rwxr-xr-x lub drwxr-sr-x (prosto z ls -l) w polu Symbolicznie (np. rwxr-xr-x). Pozostałe widoki aktualizują się natychmiast.
    2. W razie potrzeby ustaw Bity specjalne: Setuid (4000), Setgid (2000) lub Sticky (1000). Tryb ósemkowy ma wtedy cztery cyfry.
    3. Podaj Nazwa pliku lub katalogu, zaznacz To jest katalog i Rekurencyjnie (-R), jeśli trzeba, i skopiuj polecenie Liczbowe lub Symboliczne.
    4. Aby sprawdzić zmianę względną, wpisz ją w polu Zmiana symboliczna (np. u+x,go-w) i kliknij Zastosuj zmianę.

    Przyciski Typowe ustawienia wczytują popularne tryby, takie jak 644, 600, 755 czy 2775. Wiersz Zmiana względna od … pokazuje wyrażenie chmod, które zamienia ostatnio wybrany lub wpisany tryb na bieżący, np. a+x z 644 na 755.

    Jak czytać uprawnienia w Uniksie i Linuksie

    Każdy plik ma trzy klasy użytkowników: właściciela (u), grupę (g) pliku oraz pozostałych (o), czyli wszystkich innych. Każda klasa dostaje trzy uprawnienia, a każde z nich ma wartość liczbową: odczyt = 4, zapis = 2, wykonywanie = 1. Ich suma daje jedną cyfrę ósemkową na klasę: rwx = 7, rw- = 6, r-x = 5, r– = 4. Dlatego rwxr-xr-x to 755.

    W przypadku katalogu te same litery znaczą coś nieco innego, co wyjaśnia lista Kto może co zrobić: r pozwala wyświetlić listę wpisów, w pozwala tworzyć, zmieniać nazwy i usuwać wpisy (razem z x), a x pozwala wejść do katalogu i dostać się do plików w środku.

    Bity specjalne

    • Setuid (4000) na pliku wykonywalnym sprawia, że program działa z uprawnieniami właściciela pliku. Korzysta z tego passwd, aby zapisać bazę haseł. W widoku symbolicznym to s na pozycji wykonywania właściciela albo S, gdy brakuje prawa wykonywania.
    • Setgid (2000) na pliku wykonywalnym uruchamia go z uprawnieniami grupy. Na katalogu nowe pliki dziedziczą grupę katalogu, co utrzymuje porządek we wspólnych folderach projektu (2775).
    • Sticky (1000) na katalogu pozwala usuwać lub przemianowywać plik tylko jego właścicielowi, nawet gdy wszyscy mają tam prawo zapisu. /tmp ma 1777. Bit widać jako t (lub T) na pozycji wykonywania pozostałych.

    Zmiany symboliczne

    Wyrażenie symboliczne ma postać „kto, operator, uprawnienia”: u+x dodaje wykonywanie właścicielowi, go-w odbiera zapis grupie i pozostałym, a=r ustawia tylko odczyt dla wszystkich, a g=u kopiuje uprawnienia właściciela do grupy. Kolejne człony oddziel przecinkami. Wielkie X dodaje wykonywanie tylko katalogom lub plikom, które już mają jakiś bit wykonywania, dzięki czemu chmod -R a+X jest bezpieczne dla drzewa z różnymi plikami. Gdy pominiesz „kto”, narzędzie stosuje zmianę do wszystkich klas, tak jak GNU chmod przy umasce 0.

    Wskazówki bezpieczeństwa

    Unikaj 777. Taki tryb pozwala każdemu kontu na maszynie, także przejętemu procesowi serwera WWW, modyfikować lub podmienić plik. Typowe bezpieczne wybory to 644 dla plików, 755 dla katalogów i skryptów, 600 dla kluczy prywatnych i 700 dla prywatnych katalogów. Kalkulator ostrzega przed trybami z zapisem dla wszystkich, przed 777 i przed programami z setuid. Wszystko liczy się w twojej przeglądarce – nic nie jest wysyłane na serwer.

    Najczęściej zadawane pytania

    Czym różni się chmod 755 od chmod 775?

    Przy 755 zapisywać może tylko właściciel, a grupa i pozostali mogą czytać i wykonywać. 775 daje prawo zapisu również grupie, co pasuje do katalogów współdzielonych przez zespół.

    Jakie uprawnienia powinien mieć prywatny klucz SSH?

    600 (rw-------). OpenSSH odmawia użycia klucza prywatnego, który może odczytać grupa lub pozostali.

    Dlaczego tryb ósemkowy czasem ma cztery cyfry?

    Pierwsza cyfra przechowuje bity specjalne: 4 dla setuid, 2 dla setgid, 1 dla sticky. 0755 i 755 to ten sam tryb.

    Czy chmod 644 działa na katalogu?

    Ustawia bity, ale bez x nikt nie wejdzie do katalogu ani nie otworzy znajdujących się w nim plików. Dla katalogów używaj 755 lub 750.

    Co oznacza wielkie S lub T w ls -l?

    Bit specjalny jest ustawiony, ale odpowiadający mu bit wykonywania nie. Zwykle to pomyłka: dodaj prawo wykonywania albo usuń bit specjalny.