Okna.  Wirusy.  Notatniki.  Internet.  biuro.  Narzędzia.  Kierowcy

Mechanizm dystrybucji praw w systemach operacyjnych, opracowany w latach 70. ubiegłego wieku, okazał się na tyle skuteczny, że jest nadal używany w systemach UNIX, czyli od ponad czterdziestu lat.

Uprawnienia 777 – co to jest?

Podstawowa zasada dystrybucji dostępu zakłada istnienie obowiązkowych atrybutów, takich jak nazwy użytkowników systemu i ich grup. Jest niemal oczywiste, że w Linuksie każdy użytkownik może mieć tylko jedną nazwę, która musi być unikalna w tym systemie. Za pomocą pseudonimu użytkownik wchodzi do systemu, czyli przechodzi autoryzację. Ponadto system operacyjny zawiera skończoną liczbę grup użytkowników. Każdy z nich może należeć do jednej lub większej liczby grup. Edycja właściwości, tworzenie i usuwanie grup może być superużytkownikiem - root. Członkowie różnych grup mają różne prawa dla działań w systemie. Czyli np. administrator ma więcej uprawnień niż gość.

I-węzeł (który posiada każdy plik) zawiera nazwę użytkownika właściciela i nazwę grupy użytkowników, która ma prawa do tego pliku.

Po utworzeniu pliku użytkownik, pod którego nazwą działa ten proces, staje się jego właścicielem. Grupa nowo utworzonego pliku jest również określana na podstawie identyfikatora grupy działającego procesu. W dalszej pracy wszystkie te wartości można zmienić za pomocą poleceń konsoli, co zostanie omówione poniżej.

Jak zmienić uprawnienia

Polecenie chmod może zmienić tryb dostępu użytkownika do pliku. Zmiana tych praw w jakikolwiek sposób jest dozwolona wyłącznie dla jego właściciela lub superużytkownika. W systemach Unix kod jest zwykle podawany jako liczba w postaci ósemkowej lub przy użyciu specjalnych znaków mnemonicznych (liter). Stosowanie każdej metody ma swoje zalety i wady. Zatem za pomocą numerycznego wskazania praw dostępu administrator systemu będzie mógł szybko skonfigurować żądany rodzaj dostępu, a za pomocą kodów mnemonicznych będzie mógł to zrobić bardziej precyzyjnie - na przykład dodać lub usuń dostęp do zapisu lub odmów dostępu do odczytu.

Pierwszym argumentem polecenia konsoli chmod jest specyfikacja uprawnień użytkownika, która jest liczbą mnemoniczną lub ósemkową. Drugi i kolejny argument to nazwy plików, do których próbujemy zmienić uprawnienia. Przy ustawianiu uprawnień w postaci trzech liczb, pierwsza liczba określa uprawnienia właściciela, druga grupy, a trzecia wszystkich pozostałych użytkowników.

Mnemoniki praw dostępu

Dostęp do plików w systemie uprawnień ma następujące warianty:

  • r - dostęp do odczytu pliku;
  • w – prawo do edycji danych (ale nie do usunięcia);
  • x - możliwość uruchomienia pliku do wykonania.

W odniesieniu do katalogów obowiązuje następujący system uprawnień:

  • r - użytkownik może czytać dowolne pliki w katalogu;
  • w - dzięki tym uprawnieniom możesz tworzyć i usuwać pliki w folderze, nawet jeśli część z nich w katalogu należy do innego użytkownika;
  • x - wskazuje prawo do wejścia do katalogu. Jeśli masz uprawnienia do podfolderu, ale nie masz uprawnień do folderu o jeden poziom wyżej, nie ma możliwości dotarcia do folderu.

W sumie możliwych jest 8 różnych kombinacji, które pokazano na poniższym rysunku.

Z pomocą poniższej tabeli możesz zrozumieć, jak wdrożyć złożone opcje przypisywania uprawnień, a także jak ustawić uprawnienia na 777 za pomocą specyfikacji mnemonicznych chmod.

Jak ustawić uprawnienia na 777 przez SSH

Oto kilka przykładów użycia polecenia chmod:

  • chmod 711 nazwa_pliku.txt.

Użycie takiego skryptu do udostępniania plików spowodowałoby, że właściciel miałby pełne prawa do pliku, podczas gdy wszystkie inne grupy użytkowników mogłyby go jedynie wykonać.

Korzystając z kodu 775, udostępnimy właścicielowi i całej jego grupie pełną listę uprawnień. Inni użytkownicy nie będą mogli wprowadzać zmian w pliku. Trzeba powiedzieć, że aby określić plik tylko pod własną nazwą, musi on znajdować się w katalogu, w którym znajduje się ten plik. W przeciwnym razie możesz przejść do tego katalogu za pomocą cd nazwa_katalogu/nazwa_podkatalogu lub użyć następującej struktury:

  • chmod 775 /var/bin/nazwa_pliku.txt.

Aby rekursywnie zmieniać uprawnienia wszystkich plików w katalogu i wszystkich podfolderach, musisz dodać przełącznik -R do polecenia chmod. Wynikowe polecenie będzie wyglądać następująco:

  • chmod -R 711 nazwa_pliku.

Dzięki temu ustawienie uprawnień do pliku lub katalogu na 777 nie będzie stanowić problemu – wystarczy zalogować się na swój serwer WWW przez SSH i wydać komendę:

  • nazwa pliku chmod 777.

Jak ustawić uprawnienia na 777 w panelu sterowania serwera

Podobną procedurę można również wdrożyć za pomocą interfejsu wizualnego Klient FTP Klient FileZilla lub WinSCP SFTP. Aby to zrobić, będziesz musiał autoryzować swój serwer w jednym z tych programów, wybrać plik lub folder w interfejsie wizualnym, następnie kliknąć prawym przyciskiem myszy i zaznaczyć pola obok wymaganych uprawnień.

Czasami, w przypadku pilnej potrzeby, możesz nie mieć dostępu do klienta Windows, więc możesz zmienić uprawnienia dostępu poprzez panel sterowania serwera WWW. Aby to zrobić, za pomocą menedżera plików w panelu sterowania wybierz wymagane pliki i kliknij przycisk Zmień uprawnienia. Następnie będziesz musiał wszystko zaznaczyć, a teraz pytanie, jak ustawić prawa dostępu 777 do folderu, nie będzie już dla Ciebie trudne.

(Początkowa wartość uprawnień do plików to rwxrwxrwx - pełna kontrola dla wszystkich) Odbierz uprawnienia do wykonywania pliku wszystkim użytkownikom i grupom:

$ chmod a-x plik (rw-rw-rw-)

Anuluj zapis do pliku przez grupę i innych użytkowników:

$ plik chmod go-w (rw-r–r–)

Zezwolenie na wykonanie pliku przez właściciela:

$ chmod u+x plik (rwxr–r–)

Nadanie grupie takich samych praw dostępu jak właściciel pliku:

$ chmod g=u plik (rwxrwxr–)

Anuluj odczyt i zapis do pliku przez użytkowników grupy i innych użytkowników:

$ chmod go-rw plik (rwx-x-)

Przykłady użycia polecenia chmod w trybie bezwzględnym

Zezwolenie na odczyt, zapis, wykonanie pliku pliku przez wszystkich użytkowników i grupy (pełna kontrola):

$ plik chmod 777 (rwxrwxrwx)

Ustawianie uprawnień do odczytu i zapisu dla właściciela, grupy i innych użytkowników:

$ plik chmod 666 (rw-rw-rw-)

Ustawianie pełnego dostępu do plików dla właściciela i dostępu tylko do odczytu dla grupy i innych użytkowników:

$ plik chmod 744 (rwxr-r-)

Ustawienie pełnego dostępu do pliku właścicielowi pliku i odmowa dostępu grupie i innym użytkownikom:

$ plik chmod 700 (rwx--)

Ustaw uprawnienia do odczytu/zapisu dla właściciela pliku oraz uprawnienia tylko do odczytu dla grupy i innych osób:

$ plik chmod 644 (rw-r–r–)

Ustaw uprawnienia do odczytu i zapisu dla właściciela pliku i jego grupy oraz odmów dostępu innym osobom:

$ plik chmod 640 (rw-r--)

Ustawianie dostępu do plików z uprawnieniami do odczytu dla wszystkich użytkowników i grup:

$ plik chmod 444 (r–r–r–)

Uprawnienia plików do odczytu, zapisu, wykonywania przez właściciela i odczytu, wykonywania przez grupę i inne:

$ plik chmod 755 (rwxr-xr-x)

Zezwolenie na dostęp do pliku do odczytu i wykonania dla użytkownika i innych osób oraz odmowa dostępu dla grupy:

$ plik chmod 505 (r-x-r-x)

Jeśli chcesz przypisać uprawnienia do wszystkich plików w bieżącym katalogu, po prostu wstaw * (gwiazdkę) po przypisanych uprawnieniach:

$ chmod 755 *

W wyniku wykonania tego polecenia właściciel otrzyma pełne prawa (odczyt, modyfikacja, wykonanie) do wszystkich plików bieżącego katalogu, natomiast grupa i pozostali użytkownicy otrzymają tylko uprawnienia do odczytu i wykonania. Jeśli chcesz, aby Twoje działania propagowały się rekurencyjnie (w tym wszystkie podkatalogi), użyj opcji -R:

$ chmod -R 777 *

Efektem wykonania powyższego polecenia będzie rekurencyjne „przechodzenie” przez wszystkie podkatalogi bieżącego katalogu i przydzielenie pełnego dostępu wszystkim użytkownikom i grupom. W tym artykule omówiono tylko kilka przykładów użycia polecenia chmod. Jeśli chcesz dowiedzieć się więcej o działaniu polecenia chmod i uprawnieniach systemu Linux, zapoznaj się z tym artykułem.

Zmień uprawnienia tylko do katalogów (rekursywnie)

$ find /ścieżka/do/bazy/katalog -typ d -exec chmod 755 () +

$ chmod 755 $(znajdź /ścieżka/do/bazy/katalog -typ d)

$ chmod 755 `znajdź /ścieżka/do/bazowego/katalogu -typ d`

$ find /ścieżka/do/bazy/katalogu -typ d -print0 | xargs -0 chmod 755

Zmień uprawnienia tylko do plików (rekursywnie)

$ find /ścieżka/do/bazy/katalog -typ f -exec chmod 644 () +

$ chmod 644 $(znajdź /ścieżka/do/bazy/katalog -typ f)

$ chmod 0755 `znajdź./ -wpisz f`

$ find /ścieżka/do/bazowego/katalogu -typ f -print0 | xargs -0 chmod 644

Składnia Chmod dla folderów i plików

Najpierw zrozumiemy istotę problemu z Chmodem, aby zrozumieć, co dokładnie i jak konfigurujemy. Więc zacznijmy. Uprawnienia są podzielone na Chmod dla plików i Chmod dla katalogów. Są one oznaczone tak samo, ale mają nieco inne znaczenie.

Prawa dostępu (Chmod) do plików dzielą się na:

    r - prawo do odczytu danych.

    w - prawo do zmiany treści (napisz - zmieniaj tylko treść, ale nie usuwaj).

    x - prawo do wykonania pliku.

Zatrzymajmy się trochę po prawej stronie, aby wykonać plik. Faktem jest, że w systemie Linux (Unix) można wykonać dowolny plik. O tym, czy jest to plik wykonywalny, nie decyduje jego rozszerzenie (koncepcja rozszerzenia nie występuje w system plików Unix), ale zgodnie z prawami Uzyskaj dostęp do Chmod. Jeśli plik ma ustawione uprawnienie „X” (chmod x), oznacza to, że można go uruchomić w celu wykonania.

Teraz o prawach dostępu (Chmod) do folderu (katalogu):

    r - prawo do odczytu katalogu (możesz przeczytać zawartość katalogu, czyli uzyskać listę znajdujących się w nim obiektów)

    w - prawo do zmiany zawartości katalogu (możesz tworzyć i usuwać obiekty w tym katalogu, a jeśli masz prawo do zapisu, możesz usuwać nawet te pliki, które nie należą do Ciebie)

    x - prawo umożliwiające wejście do katalogu (to prawo jest zawsze sprawdzane w pierwszej kolejności i nawet jeśli masz wszystkie niezbędne prawa do obiektu, który jest pogrzebany głęboko w łańcuchu katalogów, ale nie masz prawa „X” dostępu do chociaż jednego katalogu na ścieżce do tego pliku, to się do niego nie przebijesz)

W systemach Linux (Unix) wszystkie te uprawnienia nadawane są przez głównego administratora komputera, do którego dostęp uzyskuje się poprzez podanie hasła. A jeśli większość obiektów ma prawa dostępu tylko do odczytu (Chmod), wówczas wirusy na takim komputerze praktycznie nie będą miały nic do zrobienia. nie będą mogli się tam zarejestrować, ani wtedy nie będą mogli się spełnić. To właśnie ten wynik musimy osiągnąć, ustawiając prawa dostępu (Chmod) do obiektów naszej witryny.

Składnia Chmod dla grup użytkowników

Same uprawnienia (Chmod) są podzielone na trzy kategorie, w zależności od tego, kto uzyskuje dostęp do obiektu:

    "użytkownik" - u (bezpośredni właściciel pliku)

    "grupa" - g (członek tej samej grupy co właściciel)

    „świat” - o (wszyscy inni)

Serwer określa, do której grupy użytkowników należysz, kiedy łączysz się z serwerem. Kiedy łączysz się z serwerem np. poprzez FTP, logujesz się podając swoją nazwę użytkownika (i hasło), a następnie serwer przypisuje Cię do grupy „użytkownik” („u)”. Pozostali użytkownicy, którzy również połączą się poprzez FTP z serwerem, zostaną przydzieleni do grupy „grupa” („g”), a użytkownik, który wejdzie na Twoją witrynę za pomocą swojej przeglądarki, będzie zaliczany do grupy „świat” („o”).

Odmiany trzech możliwych wartości „r”, „w” i „x” dla trzech kategorii „u”, „g” i „o” określają Chmod do plików. Jeżeli kategoria nie jest określona, ​​zostaje ona zastąpiona łącznikiem „-”. prawa dostępu (Chmod) podawane są sekwencyjnie w podanej kolejności:

    pierwszeństwo dla właściciela - "u"

    następnie dla grupy - „g”

    i na końcu po prawej dla wszystkich pozostałych - "o"

Po przypisaniu użytkownika do określonej grupy serwer przyznaje mu uprawnienia do działania na obiektach, po czym użytkownik będzie mógł odczytać, zapisać lub wykonać plik (w zależności od tego, co jego grupa może zrobić z tym obiektem) . Aby zobaczyć zawartość folderu, musi on mieć atrybut odczytu „r” (dla grupy, do której serwer przypisał użytkownika). Aby utworzyć plik lub folder w istniejącym pliku, musi on mieć atrybut Chmod ustawiony na wpis „w”.

Dla jasności spójrzmy na przykład, w którym właściciel pliku („użytkownik” - „u”) ma wszystkie prawa: prawo do odczytu, zapisu i wykonywania, a wszyscy pozostali użytkownicy mają tylko prawo do odczytu. Taki wpis Chmod wyglądałby tak: „rwx r-- r--”. Rozważmy to szczegółowo: „rwx” (wpis ten ustawia uprawnienia do obiektu dla właściciela - „u”), „r--” (wpis ten ustawia uprawnienia do tego samego obiektu, ale jeśli użytkownik jest przypisany przez serwer do grupy - „g”), „r--” (ten wpis ustawia uprawnienia do obiektu dla wszystkich pozostałych użytkowników - o”).

Jaka jest różnica między plikami Chmod a folderami

Nic nie można zrobić

Odmowa dostępu do katalogu i jego podkatalogów

Może przeglądać i edytować treść

Można dodawać, usuwać i zmieniać plik folderu

Uruchom, jeśli plik jest binarny

Użytkownik może wykonać plik binarny, o którym wie, że istnieje, dostęp do katalogu lub jego odczytanie jest zabronione

Składnia Chmod Numeryczne (777)

Widać, że tutaj używamy wpisów using Litery łacińskie i łączniki, ale zapewne już spotkałeś się z faktem, że Chmod zazwyczaj jest ustawiony w formie cyfrowej, na przykład dobrze znana kombinacja: Chmod 777, która pozwala na wszystko i wszystkich. Rzeczywiście, prawa dostępu (Chmod) są również oznaczone liczbami:

    w (rekord) zastępuje się przez 2

    x (wykonanie) zastępuje się 1

0 oznacza nic nie robić (co jest oznaczone łącznikiem w zapisie alfabetycznym) Wróćmy do przykładu zapisu praw dostępu, który podałem nieco wcześniej: rwx r-- r--. Jeśli zamienimy znajdujące się w nim litery i łączniki na cyfry, zgodnie z opisaną powyżej zasadą, i jednocześnie dodamy liczby w każdej trójce, otrzymamy widok cyfrowy tego wpisu: 744. Tj. okazuje się, że suma tych liczb pokazuje Chmod do plików lub folderu. Na przykład:

    7 (rwx) = 4 + 2 +1 (pełne prawa)

    5 (r-x)= 4 + 0 + 1 (odczytaj i wykonaj)

    6 (rw-) = 4 + 2 + 0 (odczyt i zapis)

    4 (r--) =4 + 0 + 0 (tylko do odczytu)

Poniższa tabela zawiera listę wszystkich możliwych kombinacji Chmod w formie liczbowej:

A teraz spójrzmy na różne kombinacje Chmod w liczbach, w odniesieniu do grup użytkowników:

""Właściciel""

""Grupa""

""Odpoczynek""

dokonywać

dokonywać

dokonywać

Ty sam (z wyjątkiem sytuacji, gdy uzyskujesz dostęp do witryny przez FTP) i wszyscy inni odwiedzający Twoją witrynę należysz do grupy „słowo” (wszyscy inni), więc aby pracować z witryną, musimy najpierw spojrzeć na ostatnią (trzecią) cyfrę Chmod. Aby skrypt „uruchamiał plik” podczas pracy użytkownika z witryną wystarczy ustawić na nim prawa dostępu (Chmod) zaczynając od „4” (r-- – tylko do odczytu) (5, Odpowiednie są również 6,7, ale byłoby to przesadą ze względów bezpieczeństwa.

„Dla folderu”, w którym znajduje się plik tego skryptu, należy ustawić co najmniej „5” (r-x - możesz przejść do folderu i przeczytać jego zawartość, nie możesz usunąć ani dodać). 7 jest również odpowiedni, ale będzie również zbędny z punktu widzenia bezpieczeństwa. Jeśli potrzebujesz skryptu, aby nie tylko odczytał, ale także „zapisał” jakieś dane (na przykład wprowadzone przez użytkownika), to minimalne uprawnienia do „folderu” nadal będą wynosić „5”, ale „plik” już będzie potrzebujesz uprawnień „6 » (odczyt i zapis).

Najprawdopodobniej na serwerze, na który skopiowałeś zawartość swojego silnika witryny, zostanie zainstalowany następujący Chmod do obiektów:

Foldery 755

właściciel (użytkownik) może zrobić wszystko, grupa i wszyscy inni mogą tylko czytać foldery i wchodzić do nich, ale nie mogą zapisywać plików, zmieniać nazw i usuwać ich w katalogach. (rwxr-xr-x)

Pliki 644

Jeśli masz witrynę składającą się z kodu HTML, możesz wszystko tak zostawić. Ale nowoczesne witryny są zbudowane na silnikach i mogą istnieć obiekty, do których trzeba zapisać w imieniu użytkowników z grupy „świat” - o (wszyscy inni). Mogą to być foldery służące do buforowania stron lub te, do których w trakcie pracy z witryną będą ładowane zdjęcia itp. Oczywiście, jeśli uzyskasz dostęp do witryny przez FTP, możesz zapisywać do tych plików lub folderów, ale działa z interfejsem strony internetowej, zwykły użytkownik, możesz mieć problemy. Dlatego do instalacji niektórych Chmodów należy podchodzić selektywnie.

Podczas pracy z plikami zlokalizowanymi na serwerze WWW, często zachodzi potrzeba ustawienia lub zmiany praw dostępu do folderów i plików (chmod) widok 777. W rodzinie serwer W systemach operacyjnych Unix prawa dostępu (chmod) typu 777 regulują takie działania: czytanie, zapisywanie do folderu lub pliku i wykonywanie pliku.

Co to są „uprawnienia” w systemie operacyjnym

Uprawnienia do plików lub folderów to funkcja bezpieczeństwa każdego systemu operacyjnego obsługującego wielu użytkowników oprogramowanie przed nieuprawnionym dostępem do ważnych informacji (systemowych).

Jeżeli system operacyjny jest przeznaczony dla jednego użytkownika, np. jako domowa wersja (domowego) Windowsa, to nie ma sensu szczególnie ograniczać władzy użytkownika nad swoim użytkownikiem i pliki systemowe i foldery. Ponieważ w tym przypadku ta sama osoba jest jednocześnie użytkownikiem i administratorem.

Jeśli system operacyjny (lub program) jest przeznaczony dla wielu użytkowników i można w nim znaleźć więcej niż jednego użytkownika, najpierw musisz to rozgryźć i zdecydować, który z użytkowników może mieć dostęp do ważnych plików systemowych i użytkownika, a kto powinni „pozwolić im odsunąć się”. Aby zróżnicować możliwości i stopień dostępu użytkowników do plików i folderów, w ramach systemu operacyjnego - istnieją „prawa dostępu”.

Prawa dostępu do plików i folderów przydzielane są na poziomie Administrator systemu oraz określić możliwości techniczne każdego użytkownika w zakresie jego operacji na plikach i folderach w kontrolowanych przez niego katalogach

Jednocześnie prawa dostępu umożliwiają częściowe lub całkowite zamknięcie ogólny dostęp do ważnych plików i katalogów, uniemożliwiając tym samym nieuprawnioną ingerencję w działanie systemu (program, serwer, strona internetowa) lub zmianę danych użytkownika (baza danych, baza danych) na serwerze.

Jak działają „uprawnienia”.

Ogólnie rzecz biorąc, praca użytkownika w dowolnym systemie operacyjnym lub programie to zwykła praca z plikami lub folderami. Początkowo, uzyskując dostęp do dowolnego pliku lub folderu, użytkownik może z nimi zrobić wszystko - wykonać, usunąć, zmienić (nadpisać) lub utworzyć nowy obiekt. Jednak system operacyjny jest czujny - zawsze jest w pogotowiu - za każdym razem, gdy użytkownik uzyskuje dostęp do pliku lub folderu, za każdym razem, gdy podejmuje jakąś akcję w systemie operacyjnym, skrupulatnie sprawdza, czy użytkownik może z tym pracować plik lub folder. To właśnie są „uprawnienia”. W związku z tym możliwości użytkownika są ograniczone w zakresie działań, które on (użytkownik) może wykonać na pliku lub folderze w kontrolowanym przez siebie obszarze komputera.

Uprawnienia w Unixie

Jak już wspomniano, prawa dostępu do plików i folderów są dostępne we wszystkich systemach operacyjnych, które wymagają pracy wielu użytkowników. Zarówno w systemie Windows, jak i w Unixie, a także w każdym innym systemie operacyjnym dla wielu użytkowników istnieje funkcja konfigurowania i ustawiania praw dostępu do plików i katalogów (folderów, katalogów) dla różnych kategorii użytkowników. W tym artykule skupimy się na prawach dostępu do serwer Systemy operacyjne z rodziny Unix, które są często nazywane .

Uprawnienia (chmod) takie jak 777 dla serwer Systemy operacyjne Unix regulują zezwolenie lub zakaz wykonywania przez użytkownika takich czynności jak: odczytywanie, zapisywanie do folderu lub pliku oraz wykonywanie plików wykonywalnych

Co to jest chmod

Co to jest 777

W serwer W systemach operacyjnych Unix prawa dostępu zapisywane są w postaci pojedynczej linii składającej się z trzech cyfr, przy czym każda cyfra odnosi się do innego typu grupy użytkowników. Z kolei wszyscy użytkownicy są podzieleni na grupy trzech typów:

  1. Właściciel grupy - „Właściciel folderu lub pliku”
  2. grupa Grupa - „Członek grupy właściciela folderu lub pliku”
  3. grupa Światowa lub Publiczna - „Wszyscy pozostali użytkownicy”

Zatem trzy cyfry w oznaczeniu, np. 777, oznaczają ustawione prawa dostępu dla trzech grup użytkowników do folderu lub pliku jednocześnie, gdzie - każda z trzech cyfr oznacza prawa dostępu dla swojej grupy użytkowników.

Teraz pozostaje dowiedzieć się, kim jest „Właściciel”,
Co to jest „członek grupy właścicieli”
i kim są „Wszyscy pozostali użytkownicy”.

Właściciel, członek grupy właścicieli i wszyscy pozostali użytkownicy

Ponieważ mówimy tutaj o serwerach, witrynach i systemach operacyjnych serwerów Unix, to:

Podział wszystkich użytkowników na grupy w serwerowych systemach operacyjnych Unix realizowany jest w następujący sposób - Właściciel i Członkowie grupy właściciela łączą się z serwerem za pomocą specjalnego połączenia (FTP, SSH) (protokół FTP, SSH), a wszyscy pozostali użytkownicy uzyskują dostęp strona z przeglądarki internetowej (protokół http)

Wynika z tego, że w zależności od protokołu dostępu do plików na serwerze, system operacyjny serwera Unix natychmiast dzieli użytkowników na dwie części, albo właściciela, albo członka grupy właścicieli, albo wszystkich pozostałych użytkowników. Podstawą takiego „sortowania” (powtarzam) jest protokół sieciowy połączenia - jeśli użytkownik łączy się z serwerem za pomocą konta FTP (protokół FTP), to jest to albo właściciel, albo członek jego grupy. A jeśli użytkownik uzyskał dostęp do serwera z przeglądarki internetowej (protokół http), to jest to trzecia grupa - wszyscy pozostali użytkownicy.

Zatem w przypadku systemu operacyjnego serwera Unix istnieje bardzo jasne i łatwe do zrozumienia rozróżnienie pomiędzy dwiema pierwszymi i trzecią grupą - właściciel i członek jego grupy łączą się z serwerem za pomocą specjalnego połączenia (FTP, SSH), a wszyscy innych użytkowników za pośrednictwem ich przeglądarek internetowych.

Jednak różnice pomiędzy dwiema pierwszymi grupami – właścicielem i członkiem jego grupy – zostają mocno zatarte i zawoalowane. Tutaj zaczyna się już dżungla pakietu hostingowego i indywidualnego podejścia do każdego przypadku.

Odniesienie:
Wszystkie pliki w systemie Unix (Linux) mogą mieć dwóch właścicieli: bezpośredniego właściciela-twórcę (właściciela użytkownika) i jego grupę (właściciela grupy). Pojęcie grupy właściciela oznacza pewną listę użytkowników utworzoną przez samego właściciela w celu udostępnienia pliku lub folderu.

Zatem w przypadku systemu operacyjnego serwera Unix właścicielem pliku lub folderu jest bezpośrednio administrator serwera. Cała reszta, której właściciel umożliwi dostęp do plików na swoim serwerze i która połączy się z tym serwerem poprzez protokół FTP/SSH, jest członkiem grupy właściciela.

W leasingu miejsca na dysku odnosi się do miejsca na serwerze zajmowanego przez pliki witryny. Z reguły są to niedrogie pakiety hostingowe, w których ich użytkownicy nie mają dostępu do panelu administracyjnego serwera (nie mylić z CP – panelem sterowania kontem). W związku z tym administratorzy witryn (właściciele) znajdujący się na takich pakietach, łącząc się z serwerem za pośrednictwem protokołu FTP, należą wyłącznie do grupy właścicieli. Natomiast sam właściciel (administrator serwera) przebywa gdzieś tam, „daleko w górach”, w swoim przytulnym biurze serwis techniczny gospodarz.

W przypadku wynajmu miejsca na dysku właścicielem wszystkich plików w serwisie jest sam host, natomiast dzierżawcą miejsca na dysku jest jedynie członek grupy właścicieli.

W przypadku najemców serwerów (rzeczywistych i wirtualnych) – sytuacja jest nieco inna. Wynajmując serwer, najemca oczywiście samodzielnie instaluje system operacyjny – jednocześnie jest bezpośrednim właścicielem plików tego systemu. Ale utworzenie grupy i dodanie do niej innych użytkowników jest już jego, sprawą właściciela.
Co wynika z powyższego?

A wniosek jest taki: - Najemcy miejsca na dysku nie muszą zawracać sobie głowy pierwszą cyfrą, jak (chmod) 777, ponieważ nie są i nigdy nie będą właścicielami swoich plików. Dla nich pierwsza cyfra powinna zawsze wynosić siedem. - Najemcy serwerów (rzeczywistych i wirtualnych) nie muszą zawracać sobie głowy drugą cyfrą postaci (chmod) 777. Pod warunkiem, że nie utworzyli i nie będą tworzyć na swoim serwerze żadnych grup użytkowników. Tutaj jako taki nie ma wyraźnego i silnego rozróżnienia. Będzie tak raczej, jeśli utworzysz grupę właścicieli i dodasz do niej listę użytkowników. Ale tylko sam administrator serwera może utworzyć taką grupę. Kiedy będzie tworzył, pomyśli, co zrobić z drugą cyfrą.

Co oznaczają liczby 777 lub 456?

Każda cyfra w każdej grupie reprezentuje
suma arytmetyczna trzech cyfr,
oznaczający następujące prawa:

  • 4 = Czytaj (prawo do czytania)
  • 2 = Zapis (prawo do pisania)
  • 1 = Wykonaj (zezwolenie na wykonanie)

Na przykład:

  • 6=4+2 - Odczyt+Zapis (prawo do odczytu + prawo do zapisu)
  • 5=4+1 - Odczyt+Wykonanie (prawo do odczytu + prawo do wykonania)
  • itp.

Wszystkie możliwe 7 opcji dodawania tych trzech cyfr
dotyczące ustawiania praw dostępu do folderu lub pliku dla grup użytkowników
wygląda jak to:

  • 7 = 1+2+4 - Odczyt, zapis, wykonanie (odczyt, zapis i wykonanie)
  • 6 = 4+2 - Odczyt, zapis (odczyt i zapis)
  • 5 = 4+1 - Przeczytaj, wykonaj (odczytaj i wykonaj)
  • 4 = 4 - Odczyt (tylko odczyt)
  • 3 = 1+2 - Zapisz, Wykonaj (zapisz i wykonaj)
  • 2 =2 - Zapis (tylko zapis)
  • 1 =1 - Wykonaj (tylko wykonanie)

Zatem kładąc uprawnienia (chmod), takie jak 765,
ustawimy następujące uprawnienia dla grup:

  • Pierwsza cyfra, właściciel grupy, właściciel pliku lub folderu
    Pierwsza cyfra = 7
    Oznacza to, że Właściciel folderu lub pliku ma prawo do:
    7=4+2+1 - Odczyt (odczyt) + Zapis (zapis) + Wykonanie (wykonanie)
  • Druga cyfra, grupa grupy, członek grupy właściciela
    Druga cyfra = 6
    Oznacza to, że członek grupy właścicieli ma prawo do:
    6=4+2 - Odczyt (odczyt)+Zapis (zapis)
  • Trzecia cyfra, grupa światowa, wszyscy pozostali użytkownicy
    Trzecia cyfra = 6
    Oznacza to, że wszyscy pozostali użytkownicy mają prawo do:
    5=4+1 - Odczyt (odczyt)+Wykonanie (wykonanie)

Teraz jest jasne, że ustawiając prawa dostępu kombinacją liczb 777 (trzy osie), otwieramy pełny dostęp do pliku absolutnie wszystkim grupom użytkowników. Podobny efekt można uzyskać umieszczając plik w folderze „Dokumenty publiczne” w systemie Windows.

Należy zauważyć, że niektóre kombinacje liczb mogą wskazywać na bardzo szalone sytuacje z prawami dostępu do plików. Na przykład kombinacja taka jak 477 umożliwi dostęp do nadpisania i wykonania pliku każdemu z wyjątkiem jego właściciela (odczyt - administrator). Niestety, tak się nie dzieje.

Prawa dostępu ustawiane są zawsze „w kolejności malejącej” od „Właściciela” do „Członka grupy właściciela” i dalej – do grupy „Wszyscy inni”. Ale nie odwrotnie!

Jak ustawić prawa dostępu, takie jak 777 na serwerze

Teraz, gdy stało się całkowicie jasne, co oznaczają te trzy cenione liczby - ustaw uprawnienia (chmod), takie jak 777, nie będzie trudne. Aby ustawić uprawnienia (chmod), takie jak 777, dla folderu lub pliku, który jest na serwerze, będziesz potrzebować dowolnego menedżera plików, który jest w stanie nawiązać i utrzymać połączenie FTP z serwerem. Mogłoby być Totalny Dowódca, Windows Commander, CuteFTP, Filezilla lub cokolwiek innego. Osobiście wolę prosty i darmowy menedżer plików FTP Filezilla, mimo że jestem fanem Total Commandera.

Aby ustawić uprawnienia (chmod), takie jak 777, wchodzimy na serwer poprzez FTP na prawach Administratora!, po wprowadzeniu pary login-hasło Administratora!. Ponadto znajdujemy i wybieramy wymagany obiekt (folder lub plik). Następnie kliknij prawym przyciskiem myszy menu kontekstowe „Plik - Zmień atrybuty”. Następnie określ żądany atrybut (prawa dostępu) i kliknij „OK”. Aby „wprowadzić” żądaną kombinację liczb, musisz albo zaznaczyć lub odznaczyć pola wyboru (znaczniki wyboru) w pobliżu niezbędnych elementów, albo wprowadzić wymagany kod formularza 777 z klawiatury w otwartym oknie. Wszystkie menedżery plików FTP obsługują obie metody.

Zobacz wrak 777 w Denver

Jak wszyscy kosmici z kosmosu, regularnie komunikuję się z przedstawicielami różnych cywilizacji pozaziemskich, którzy rozpoczynają budowę swoich witryn, zanim dotrą na Ziemię.

Wiadomość dla kosmitów:
Nie trzeba próbować ustawiać uprawnień (chmod), takich jak 777, podczas pracy z dobrze znanym pakietem, który symuluje jedynie działanie serwera WWW z systemem operacyjnym Unix komputer lokalny faktycznie działa w systemie operacyjnym Windows. Nie ma takiego przycisku.

Pliki w Linuksie mają dwóch właścicieli

Konieczne jest prawidłowe ustawienie uprawnień do plików i folderów. Możesz to zrobić za pomocą FileZilla. Ogólnie rzecz biorąc, każdy serwer potrzebuje własnych, specyficznych ustawień, których najlepiej dowiedzieć się od swojego dostawcy usług hostingowych. Ale zazwyczaj prawa są ustawione w następujący sposób: 444 dla plików znajdujących się w katalogu głównym, 755 dla folderów w katalogu głównym, 705 dla folderów tmp i logs, 555 dla folderu szablonów, 755 dla folderu image/stories, 755 dla folderu Cache 777.

Właścicielem nowego pliku jest użytkownik, który go utworzył.

Pliki w Linuksie mają dwóch właścicieli: użytkownika (właściciela użytkownika) i grupę (właściciela grupy), przez co rozumie się pewną listę użytkowników, przy czym właściciel pliku nie musi być członkiem grupy, do której należy plik. Każdy użytkownik może być członkiem kilku grup jednocześnie, z których jedna nazywa się podstawową (podstawową), a cała reszta - dodatkową (uzupełniającą). Daje to większą elastyczność w organizacji dostępu do konkretnego pliku. Dzielenie się bardzo łatwo jest zorganizować jakiś zasób, wystarczy go stworzyć Nowa grupa i uwzględnij w nim wszystkich, którzy naprawdę tego potrzebują, a jeśli dana osoba, załóżmy, przeniosła się do innego działu i nie ma już potrzeby korzystania z tego pliku. I wszystko jest bardzo proste, wystarczy wyłączyć to z tej grupy. No cóż, co zrobić z resztą, czy rzeczywiście nie będą w stanie przynajmniej przeczytać zawartości pliku, czy też trzeba będzie je za każdym razem uwzględnić i wykluczyć z grupy.
Ale dla wszystkich pozostałych (innych), które nie należą ani do właściciela użytkownika, ani do właściciela grupy, prawa dostępu są ustalane osobno i z reguły najbardziej minimalne. Zwykle właścicielem pliku jest użytkownik, który go utworzył. podany plik. Znowu grupa właścicieli utworzony plik jest ustawiona na podstawową grupę użytkownika, który utworzył plik, ale w niektórych wersjach Uniksa właściciel grupy jest dziedziczony od właściciela grupy katalogu, w którym plik jest tworzony. Aby zmienić właściciela pliku, użyj polecenie chown przyjmując jako parametry nazwę nowego właściciela i listę plików: # chown nowy_właściciel plik1 plik2 ...Oczywiście zamiast nazwy pliku może być nazwa katalogu, ale właściciel plików znajdujących się w katalogu nie będzie zmienić, aby tak się stało, najlepiej użyć flagi -R (chown -R). Korzystając z tego polecenia (jednak jak większość), możesz użyć wyrażenia regularne jeśli istnieje potrzeba wybrania plików spełniających określone kryterium (chown - R lys *.c). Aby zmienić właściciela grupy użyj komendy chgrp, składnia użycia tej komendy jest podobna do poprzedniej: # chgrp sales /home/sales/*. Nawiasem mówiąc, polecenie chown pozwala natychmiast ustawić grupę właścicieli, w tym celu należy umieścić dwukropek bezpośrednio po imieniu właściciela bez spacji i innych znaków oraz wpisać nazwę wymaganej grupy
# chown - R sergej:gljuk * , ta opcja jest również dozwolona # chown - R:gljuk * (tj. odpowiednik polecenia chgrp).
Własność pliku określa operacje, które użytkownik może wykonać na pliku. Najbardziej oczywistym z nich jest zmiana właściciela i grupy jakiegoś pliku. Operacje te mogą wykonywać superużytkownik i właściciel pliku (w pochodnych BSD UNIX tylko superużytkownik). Jeśli z pierwszym wszystko jest jasne, to na przykład pisząc program, a następnie czyniąc go właścicielem, na przykład superużytkownikiem, niestety nie zadziała i chociaż opcja zmiany właściciela jest dozwolona, ​​​​uczciwie to zrobiłem nie znajdziesz takiej aplikacji. Ale grupę, jeśli jesteś właścicielem pliku, można zmienić tylko na grupę podstawową (domyślnie ma ona taką samą nazwę jak nazwa odpowiedniego użytkownika). Wszystkie te ograniczenia wprowadzono z kilku powodów, aby nikt nie mógł prześlizgnąć się do złośliwego pliku i aby w przypadku, gdy komputer ma limit miejsca na dysku dla konkretnego użytkownika, nie było możliwości prostego przesłonięcia właściciela poprzez jego nadpisanie.
Następny podstawowe operacje które można wykonać na pliku: są to dostęp do odczytu (Read), dostęp do zapisu (Write) i dostęp do wykonania (eXecute). Operacje te ustawia się osobno dla każdej z trzech grup użytkowników. Co więcej, może to zrobić tylko użytkownik-właściciel i oczywiście superużytkownik. Polecenie chmod służy do ustawiania odpowiednich uprawnień. Używa się go w dwóch postaciach: bezwzględnej – gdy ignoruje się stare prawa i bezwarunkowo ustanawia się nowe, oraz względnej – gdy do istniejących praw dodaje się/usuwa nowe. Forma absolutna polega na określeniu uprawnień do plików poprzez bezpośrednie określenie ich w formie ósemkowej. Aby otrzymać kompletny kod wymagany tryb pliku, wystarczy dodać wartości kodów podanych w tabeli.

Dużo zdrowia, drodzy czytelnicy bloga! Wszyscy chcielibyśmy, aby każdy folder znajdujący się na serwerze hostingowym i należący do serwisu był jak najbardziej chroniony przed nieuprawnionym dostępem.

Taka ochrona jest zapewniona dzięki temu, że 90% hosterów korzysta z systemów operacyjnych typu Unix, w których można regulować prawa dostępu do wszystkich plików i katalogów. Serwer mojego dostawcy usług hostingowych, na którym znajduje się kilka moich projektów, nie jest wyjątkiem.

Przy okazji, pamiętaj, aby zapytać, klikając podany link. Ale kontynuujmy. Zasady ustalone w Unixie różnią się od zasad pracy znanych wielu osobom na sali operacyjnej. System Windows, gdzie ochrona w tym aspekcie nie jest tak silna, co czasami prowadzi do katastrofalnych konsekwencji w postaci infekcji wirusowej systemu.

CHMOD dla użytkowników i uprawnień do plików i folderów (katalogów)

W systemach opartych na systemie Unix sytuacja jest inna i istnieje możliwość bardzo utrudnienia życia złoczyńcom, którzy przez długi czas próbują wykorzystać twoją ciężką pracę. Mianowicie poprawnie skonfiguruj prawa dostępu CHMOD. Naszym zadaniem jest nadanie możliwie minimalnych uprawnień dostępu do plików i folderów, co jednak nie naruszy prawidłowego działania serwisu.

Zgadzam się, grzechem jest nie skorzystać z okazji, aby poważnie się wzmocnić. Oczywiście w tym przypadku edycja niektórych plików potrwa nieco dłużej, ale tutaj trzeba wybrać: albo optymalizować bezpieczeństwo systemu, albo... Poniżej postaram się usystematyzować informacje o CHMOD (prawach dostępu), bo tam jest kilka niuansów, które muszą być znane webmasterowi. Zacznijmy więc.

Prawa dostępu różnią się dla różnych grup użytkowników. Podczas próby połączenia serwer określa, do której grupy przypisać konkretnego użytkownika. Wszyscy użytkownicy są podzieleni na trzy kategorie:

  1. "użytkownik" - właściciel pliku
  2. „grupa” – jeden z członków grupy, do której należy właściciel
  3. „świat” – „reszta świata”, czyli wszyscy pozostali użytkownicy

Jeśli połączysz się z serwerem za pośrednictwem i zalogujesz się przy użyciu swojej nazwy użytkownika i hasła, zostaniesz zidentyfikowany jako "użytkownik"(u) jeśli ktoś inny połączy się przez FTP, zostanie to zdefiniowane jako Grupa(g) jeśli użytkownik korzysta z przeglądarki, wówczas należy to do tej kategorii świat(o).

Teraz o prawach dostępu CMOD do plików i katalogów. W rzeczywistości są one nieco inne, chociaż oznaczenia są takie same. Uprawnienia do plików:

  • r (odczyt) - uprawnienie do odczytu danych pliku
  • w (wright) - prawo do zmiany treści (można dokonać jedynie edycji treści - nagrywanie, ale nie usuwanie)
  • x (eXutive) - prawo do uruchomienia pliku

Prawa dostępu do folderów (katalogów):

  • r - prawo do odczytu folderu (możesz uzyskać zawartość katalogu, czyli listę zawartych w nim plików)
  • w - prawo do zmiany zawartości (zezwolenie na tworzenie i usuwanie obiektów w katalogu, jeśli posiadasz uprawnienia do zapisywania plików, możesz usuwać nawet te obiekty, które nie należą do Ciebie)
  • x - prawo dostępu do tego lub innego katalogu (osobliwość polega na tym, że nawet jeśli masz wszystkie niezbędne prawa do pliku znajdującego się „głęboko” w katalogach, ale nie masz praw dostępu do chociaż jednego podkatalogu na ścieżce do tego obiektu, nie będziesz miał do niego dostępu)

Myślnik „-” oznacza brak jakichkolwiek praw. Wszystkie te uprawnienia są nadawane przez administratora, który uzyskuje tę możliwość po wprowadzeniu hasła. Jeśli uda nam się ustawić maksymalne możliwe ograniczenia praw dostępu CHMOD do niektórych plików zasobów, możemy praktycznie wyeliminować niebezpieczeństwo realizacji naszego „brudnego czynu” przez programy wirusowe.

Dla jasności rozważmy przykład, w którym właściciel pliku ma wszystkie możliwe uprawnienia: do odczytu, zapisu i wykonywania. Użytkownicy sklasyfikowani jako g (grupa) mają dostęp tylko do odczytu i zapisu, wszyscy pozostali (w) są tylko do odczytu. Wpis CHMOD będzie wyglądał następująco: „rwx rw- r- -”.

Uprawnienia do plików i folderów w ujęciu liczbowym: CHMOD (777, 755, 444)

Jednak coraz częściej webmasterzy w swojej praktyce muszą przypisywać określone prawa dostępu w kategoriach cyfrowych:

  • r (czytaj) - 4
  • w (pisz) - 2
  • x (wykonanie) - 1
  • - (brak uprawnień) - 0

Powróćmy teraz do powyższego przykładu przypisywania uprawnień „rwx rw- r- -”. Aby wyświetlić uprawnienia każdego użytkownika, stosuje się dodanie jego praw (r odczyt + w zapis + x wykonanie). Zatem część rekordu właściciela pliku u (użytkownika) - „rwx” zmieni się na 7 (4+2+1). Dla członka grupy g (grupa) - „rw-” w 6 (4+2+0) i dla pozostałych użytkowników o (świat) - „r- -” w 4 (4+0+0). Jako podsumowanie przedstawię tabelę przestawną z wartościami uprawnień CHMOD, wyrażonymi zarówno literami, jak i cyframi:


Teraz przedstawię kolejną tabelę, która odzwierciedla całkowite uprawnienia CHMOD dla wszystkich grup użytkowników w formacie liczbowym:


To główne kombinacje, które są najczęściej stosowane w pracy webmastera. Resztę tworzy się przez analogię. Jeśli jesteś administratorem serwisu lub bloga, ale pracujesz nad projektem bez łączenia się przez FTP, również należysz do grupy „Inni użytkownicy”. W takim przypadku podczas pracy z witryną w tym trybie należy wziąć pod uwagę ostatnią cyfrę wartości CHMOD.

Zwykle na serwerze, na którym znajdują się Twoje pliki Blog WordPressa, uprawnienia są ustawione na 755 dla folderów i 644 dla plików, które są ich częścią. Dzieje się tak, gdy zasób jest zbudowany przy użyciu Pliki HTML Jednak w nowoczesnych warunkach do budowy witryny masowo wykorzystuje się CMS (systemy zarządzania treścią), do których zalicza się WordPress. I tutaj mogą znajdować się obiekty, do których należy zapisać z grupy użytkowników „świat”. Mogą istnieć foldery, do których ładowana jest zawartość, w tym obrazy.

Dlatego przypisywanie praw CHMOD do niektórych plików musi być zróżnicowane. Jeśli wejdziesz do zarządzania witryną przez FTP, możesz wykonać dowolną akcję, jednak w wielu przypadkach pracujemy nad naszym projektem i w tym przypadku mogą pojawić się problemy, jeśli uprawnienia są zbyt wysokie i odwrotnie, jeśli prawa dostępu do tego czy innego pliku (folderu) są niedoceniane, wówczas zwiększa się ryzyko bezpieczeństwa. Dlatego na podstawie powyższego możemy określić kilka zaleceń dotyczących praktycznego zastosowania CHMOD na blogu WordPress:

777 - dla folderów, w których stale zapisywane i usuwane są pliki (dla folderu pamięci podręcznej)
755 - w odniesieniu do folderów, w których pliki są stale zapisywane, ale nie usuwane
666 - dla plików, w których od czasu do czasu trzeba dodać wpis (np. plik .htaccess)
644 - dla plików tylko do odczytu (.php, .html itp.)

Jak ustawić uprawnienia CHMOD za pomocą menedżera FTP FileZilla

Jeśli chcesz dokonać jakichś zmian podczas pracy z zasobem, ale ze względu na zakaz edycji jest to niemożliwe, musisz połączyć się z serwerem hostingowym przez FTP i zmienić prawa dostępu na 777. Jednak po dokonaniu zmian do pliku, zaleca się ponowne ustawienie poprzedniego CHMOD.

Teraz więcej o tym, jak wykonać tę operację za pomocą. W tym celu należy otworzyć program i połączyć się poprzez FTP z serwerem hostingowym. Po lewej stronie "Zdalny serwer" Najpierw zaznacz pliki, których atrybuty będą edytowane:

I na zewnątrz menu kontekstowe spowodowane naciśnięciem prawy przycisk myszy, wybierz „Uprawnienia do plików”. Następnie pojawi się okno dialogowe. „Zmień atrybuty pliku”:

Tutaj przypisujemy żądane wartości CHMOD dla wybranych (lub wybranych) plików. Dzieje się tak jednak tylko wtedy, gdy wybrałeś plik lub grupę plików. W przypadku chęci ustawienia lub zmiany wartości CHMOD dla katalogu (folderu) po wybraniu opcji „Zmień atrybuty pliku” pojawi się analogowe okno, nieco inne niż powyższe, a mianowicie:

Widzisz, są tu dodatkowe ustawienia. Jeśli zaznaczysz pole obok linii „Przekieruj do zagnieżdżonych katalogów” oznacza to, że określone prawa dostępu zostaną zastosowane do katalogów (folderów) lub plików zagnieżdżonych w tym katalogu. Gdy zaznaczysz poniższy checkbox, grupa ustawień znajdująca się poniżej stanie się aktywna i będziesz musiał także wybrać sposób, w jaki chcesz zastosować ustawienia: do wszystkich plików i katalogów, tylko do podplików lub tylko do katalogów.

Dzisiaj chciałbym porozmawiać o uprawnieniach do plików i folderów (czytaj). Koncepcja ta przyszła do świata webmasteringu z systemów Linux (Unix), na których działa większość hostingów.

A sama nazwa Chmod to nazwa programu w systemie Linux, który umożliwia przypisywanie praw dostępu do różnych obiektów. A ponieważ Twoja witryna jest zainstalowana na serwerze pod adresem działającego Linuksa(Unix) tej czy innej odmiany, wówczas praca z obiektami Twojej witryny będzie podlegać zasadom ustanowionym przez system operacyjny Linuksa (Unixa).

Tak naprawdę w systemie Windows dla wszystkich plików ustawione są maksymalne uprawnienia, co w rzeczywistości prowadzi do dominacji na naszych komputerach, a także nie pozwala właścicielom firm antywirusowych umrzeć z głodu. W systemach Linux (Unix) jest inaczej - wszystko jest bardziej skomplikowane, ale jednocześnie bezpieczniejsze. Jeśli wszystko zostanie skonfigurowane poprawnie i umiejętnie, możesz znacznie zwiększyć bezpieczeństwo swojej witryny.

Podstawowe pojęcia dotyczące uprawnień do plików i folderów

Jeśli wszystko pozostawimy przypadkowi i nie zawracamy sobie głowy ustawieniem niezbędnych uprawnień, prawdopodobieństwo, że Twój zasób zostanie zhakowany lub zainfekowany złośliwym kodem, będzie bardzo wysokie. Cóż, jeśli nosiłeś wszystkie swoje dane, ale co, jeśli nie?!

Dlatego lepiej od razu, bez zwłoki skonfigurować i zmienić Chmod dla wszystkich ważnych obiektów w swoim silniku, kierując się zasadą minimalizmu. Te. nadawać obiektom minimalne uprawnienia niezbędne do prawidłowego działania serwisu.

Najpierw zrozumiejmy istotę problemu, aby zrozumieć, co dokładnie i jak konfigurujemy. Więc zacznijmy. Prawa dostępu są rozdzielone w odniesieniu do plików i katalogów. Są one oznaczone tak samo, ale mają nieco inne znaczenie.

Z kolei w odniesieniu do plików możliwe jest:

  • r - prawo do odczytu danych.
  • w - aby zmienić treść (nagranie - tylko zmiana treści, nie usuwanie).
  • x – aby uruchomić plik.

Zatrzymajmy się trochę więcej na możliwości wykonania pliku. Rzecz w tym, że w Linuksie można uruchomić dowolny plik. O tym, czy jest to plik wykonywalny, decyduje nie jego rozszerzenie (koncepcja rozszerzenia nie istnieje w systemie plików Uniksa), ale prawa dostępu Chmod. Jeśli jakiś plik ma prawo wykonania „X”, oznacza to, że można go uruchomić do wykonania.

Dla katalogów możliwe jest:

  1. r - prawo do odczytu katalogu (możesz przeczytać zawartość katalogu, czyli uzyskać listę znajdujących się w nim obiektów)
  2. w - aby zmienić zawartość katalogu (możesz w nim tworzyć i usuwać obiekty, a jeśli masz uprawnienia do zapisu, możesz usuwać nawet te pliki, które nie należą do Ciebie)
  3. x - aby wejść do katalogu (zawsze jest to sprawdzane jako pierwsze, nawet jeśli posiadasz wszystkie niezbędne uprawnienia do obiektu, który jest ukryty głęboko w łańcuchu katalogów, ale nie masz atrybutu „X”, aby uzyskać dostęp do przynajmniej jednego katalogu w ścieżkę do tego pliku, wtedy do niego nie dotrzesz)

W systemach Linux wszystko to dystrybuowane jest przez głównego administratora komputera, do którego dostęp uzyskuje poprzez podanie hasła. A jeśli większość obiektów będzie miała uprawnienia tylko do odczytu, wówczas wirusy na takim komputerze nie będą miały praktycznie nic do zrobienia. nie będą mogli się tam zarejestrować, ani wtedy nie będą mogli się spełnić. To właśnie ten wynik musimy osiągnąć, ustawiając niezbędny Chmod na obiektach naszej witryny.

Uprawnienia dla grup użytkowników

Same uprawnienia dzielą się na trzy kategorie, w zależności od tego, kto ma dostęp do obiektu:

  • "user" - u (bezpośrednio właściciel pliku)
  • "grupa" - g (członek tej samej grupy co właściciel)
  • „świat” - o (wszyscy inni)

Serwer określa, do której grupy użytkowników należysz, kiedy łączysz się z serwerem. Kiedy łączysz się z serwerem np. poprzez FTP, logujesz się podając swoją nazwę użytkownika (i hasło), a następnie serwer przypisuje Cię do grupy „użytkownik” („u)”.

Pozostali użytkownicy, którzy również łączą się poprzez FTP z serwerem, zostaną przypisani do grupy „grupa” („g”), a osoba odwiedzająca Twoją witrynę za pomocą przeglądarki wpada do grupy „świat” („o”).

Odmiany trzech możliwych wartości „r”, „w” i „x” dla trzech kategorii „u”, „g” i „o” oraz zdefiniuj chmod do plików. Jeżeli kategoria nie jest określona, ​​zostaje ona zastąpiona łącznikiem „-”. Uprawnienia nadawane są sekwencyjnie w podanej kolejności:

  1. najpierw prawa dla właściciela - "u"
  2. następnie dla grupy - „g”
  3. i na koniec - dla wszystkich pozostałych - "o"

Po przypisaniu gościa do określonej grupy serwer przyznaje mu uprawnienia do działania na obiektach, po czym odwiedzający będzie mógł odczytać, zapisać lub wykonać plik (w zależności od tego, co jego grupa może zrobić z tym obiektem) .

Aby wyświetlić zawartość katalogu, musi on mieć atrybut odczytu „r” (dla grupy, do której serwer przypisał gościa). Aby utworzyć plik lub folder w istniejącym katalogu, konieczne jest, aby ten istniejący katalog miał atrybut wpisu „w”.

Dla jasności spójrzmy na przykład, w którym właściciel pliku („użytkownik” - „u”) ma wszystkie prawa: czytać, zapisywać do niego i wykonywać, a wszyscy pozostali użytkownicy mają tylko uprawnienia do odczytu. Taki wpis Chmod wyglądałby tak: „rwx r-- r--”.

Rozważmy to szczegółowo: „rwx” (ten wpis ustawia prawa do obiektu dla właściciela - „u”), „r--” (ten wpis ustawia prawa do tego samego obiektu, ale jeśli odwiedzający jest przypisany przez serwer do grupy - "g"), "r--" (wpis ten ustawia uprawnienia na obiekcie dla wszystkich pozostałych użytkowników - "o").

Jaka jest różnica między uprawnieniami do plików i folderów

Okazuje się, że są trzy grupy użytkowników i trzy możliwe działania z przedmiotami. Jeszcze się nie pomyliłeś? Umieśćmy to wszystko na półkach w postaci tabletek. Najpierw zobaczmy, czym się różnią:

A także tablica pokazująca różne kombinacje Chmod dla różne rodzaje obiekty:

Nic nie można zrobić

Odmowa dostępu do katalogu i jego podkatalogów

Może przeglądać i edytować treść

Możesz dodawać, usuwać, zmieniać plik katalogu

Uruchom, jeśli plik jest binarny

Użytkownik może wykonać plik binarny, o którym wie, że istnieje, dostęp do katalogu lub jego odczytanie jest zabronione

Chmod wyrażony w liczbach (777, 400, 666, 755, 444)

Widzisz, że tutaj wpisy wykorzystujące litery łacińskie i łączniki służą do opisu praw dostępu, ale z tym zapewne już się spotkałeś Chmod jest zwykle podawany liczbowo, na przykład dobrze znana kombinacja: 777, pozwalająca na wszystko i wszystkich.

Rzeczywiście, przywileje są również oznaczone liczbami:

  1. r (czytaj) zastępuje się przez 4
  2. w (rekord) zastępuje się przez 2
  3. x (wykonanie) zastępuje się 1
  4. 0 oznacza - nic nie robić (co jest oznaczone łącznikiem w zapisie alfabetycznym)

Wróćmy do przykładowego wpisu, który podałem nieco wcześniej: rwx r-- r--. Jeśli zamienimy znajdujące się w nim litery i łączniki na cyfry, zgodnie z opisaną powyżej zasadą, i jednocześnie dodamy cyfry w każdej trójce, otrzymamy cyfrową postać tego wpisu: 744.

Te. okazuje się, że suma tych liczb pokazuje Chmod w odniesieniu do plików lub folderu. Na przykład:

  • 7 (rwx) = 4 + 2 +1 (pełne prawa)
  • 5 (r-x)= 4 + 0 + 1 (odczytaj i wykonaj)
  • 6 (rw-) = 4 + 2 + 0 (odczyt i zapis)
  • 4 (r--) =4 + 0 + 0 (tylko do odczytu)
  • itp.

W poniższej tabeli wymieniono wszystkie możliwe kombinacje uprawnień, zapisane numerycznie:

A teraz przyjrzyjmy się różnym kombinacjom wpisów liczbowych w odniesieniu do grup użytkowników:

"Właściciel"

"Grupa"

"Odpoczynek"

dokonywać

dokonywać

dokonywać

Ty sam (z wyjątkiem sytuacji, gdy uzyskujesz dostęp do witryny przez FTP) i wszyscy inni odwiedzający Twój zasób należysz do grupy „słowo” (wszyscy inni), więc aby pracować z witryną, musimy najpierw spojrzeć na ostatnią (trzecią) cyfrę ten wpis.

Aby skrypt „uruchamiał plik” podczas pracy użytkownika z witryną, wystarczy ustawić na nim prawa, zaczynając od „4” (r-- - tylko do odczytu) (5,6,7 są również odpowiednie, ale będzie to zbędne z punktu widzenia bezpieczeństwa).

Dla katalogu, w którym znajduje się plik tego skryptu, należy ustawić co najmniej „5” (r-x - możesz przejść do katalogu i przeczytać jego zawartość, nie możesz usunąć ani dodać). 7 jest również odpowiedni, ale będzie również zbędny z punktu widzenia bezpieczeństwa.

Jeśli potrzebujesz skryptu, aby nie tylko odczytał, ale także „zapisał” niektóre dane (na przykład wprowadzone przez gościa), to minimalne prawa do „folderu” nadal będą wynosić „5”, ale w przypadku „pliku” będzie potrzebować „6” (odczyt i zapis).

Najprawdopodobniej na serwerze, na który skopiowałeś zawartość swojego silnika witryny, zostanie zainstalowany następujący Chmod do obiektów:

Jeśli masz zasób składający się tylko z strony HTML, wtedy można by wszystko zostawić tak, jak jest. Ale nowoczesne strony są zbudowane na silnikach i mogą istnieć obiekty, do których trzeba napisać w imieniu gości z grupy „świat” - o (wszyscy inni). Mogą to być katalogi służące do buforowania stron lub te, do których w trakcie pracy z witryną będą ładowane zdjęcia itp.

Oczywiście, jeśli uzyskasz dostęp do witryny przez FTP, będziesz mógł zapisywać w tych plikach lub katalogach, ale pracując z interfejsem internetowym jako zwykły użytkownik, możesz mieć problemy. Dlatego do instalacji niektórych praw należy podchodzić selektywnie:

dla wszystkich katalogów, w których powinny być zapisywane pliki, ale nie muszą być regularnie usuwane

dla folderów, w których mają być zapisywane i usuwane pliki (np. dla pamięci podręcznej)

Dla proste pliki tylko do odczytu (.html, .php itp.)

dla plików, które mogą wymagać zapisu (na przykład z bazami danych .dat)

Jak przypisać Chmod za pomocą PHP

Jak można to wszystko zastosować w praktyce w przypadku Twojej witryny? W zasadzie wszystko jest proste. Aby przypisać prawa dostępu, możesz:

Jeśli jednak nie można zmienić Chmod na żadne pliki, możesz spróbować je przypisać PHP oznacza. Możesz użyć następującego kodu:

Będziesz musiał zastąpić nazwę_pliku_x.php i nazwę_katalogu_x prawdziwymi nazwami plików i folderów, na które chcesz dokonać zmiany. Odpowiednio, dla plików zostanie ustawiony numer 666, a dla katalogów 777. Umieść ten kod PHP w pliku za pomocą dowolnego notatnika tekstowego (zalecane) i nadaj mu rozszerzenie .php, np. prava.php.

skopiuj prava.php przez FTP do katalogu, w którym nie można przypisać praw dostępu w zwykły sposób. W pasek adresu przeglądarce, wpisz ścieżkę do prava..php) i naciśnij „Start” lub wpisz na klawiaturze. To wszystko, teraz uprawnienia zostaną całkowicie zmienione za pomocą PHP.

W przypadku Joomla natychmiast po zainstalowaniu możesz ustawić 777 w następujących katalogach:

Administrator/kopie zapasowe/ administrator/pamięć podręczna/ administrator/komponenty/ administrator/moduły/ administrator/szablony/ pamięć podręczna/ komponenty/ obrazy/ obrazy/banery/ obrazy/historie/ język/ język/en-GB/ język/ru-RU/ media/ moduły/ wtyczki/ wtyczki/treść/ wtyczki/wyszukiwanie/ wtyczki/system/ szablony/

Po zainstalowaniu wszystkich rozszerzeń dla Joomla i dokonaniu ostatecznych ustawień należy wykonać Chmod do większości powyższych katalogów w celu zwiększenia bezpieczeństwa witryny powrót do 755. Będziesz musiał zostawić 777 dla katalogów z pamięcią podręczną, kopiami zapasowymi i zdjęciami.

W przypadku plików silnika znajdujących się w katalogu głównym witryny, z wyjątkiem pliku sitemap.xml, lepiej ustawić 444 (tylko do odczytu dla wszystkich grup odwiedzających). W ustawieniach.php czasami zaleca się nawet ustawienie 400.

Dokładnie to samo mogę doradzić odnośnie ustawiania praw dostępu do obiektów w silnikach SMF i WordPress. Pożądane jest, jeśli to możliwe, opuszczenie kraju na stałe dla katalogów 755(z wyjątkiem pamięci podręcznej, obrazów, katalogów kopii zapasowych określonych powyżej i ewentualnie innych, w razie potrzeby) oraz dla plików - 644.

Lepiej umieścić 444 na plikach w katalogu głównym witryny.

Jeśli podczas pracy z witryną wystąpi problem z brakiem możliwości zapisania ustawień do jakiegoś pliku lub niemożnością utworzenia jakiegoś katalogu, możesz tymczasowo nadać im wysokie uprawnienia (na przykład 777), a następnie zwrócić wszystko z powrotem (z dala od niebezpieczeństwa). I w żadnym wypadku nie odchodź(dla łatwości korzystania z witryny) nieuzasadnione wysokie Chmod.

Powodzenia! Do zobaczenia wkrótce na stronach bloga

Możesz być zainteresowany

Kodowanie tekstu ASCII (Windows 1251, CP866, KOI8-R) i Unicode (UTF 8, 16, 32) - jak naprawić problem z krakozyabry
OpenServer - nowoczesny serwer lokalny oraz przykład jego wykorzystania do instalacji WordPressa na komputerze
Co się stało Adres URL Jaka jest różnica między absolutnym a powiązania względne dla witryny
Wyszukiwarka Yandex w witrynie i sklepie internetowym
Mapa witryny w formacie xml dla Yandex i Google - jak stworzyć mapę witryny w Joomla i WordPress lub w generatorze online

Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl + Enter
UDZIAŁ: