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

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

Uprawnienia 777 - co to jest?

Podstawową zasadą dystrybucji dostępu jest istnienie obowiązkowych atrybutów, takich jak nazwy użytkowników systemu oraz ich grupy. Niemal oczywiste jest, że w Linuksie każdy użytkownik może mieć tylko jedną nazwę, która musi być unikalna w ramach tego systemu. Za pomocą pseudonimu użytkownik wchodzi do systemu, czyli przekazuje autoryzację. Ponadto system operacyjny zawiera skończoną liczbę grup użytkowników. Każdy z nich może być członkiem jednej lub kilku grup. Edytować właściwości, tworzyć i usuwać grupy może superużytkownik - root. Członkowie różnych grup mają różne prawa do działań w systemie. Na przykład administrator ma więcej praw niż gość.

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

Kiedy plik jest tworzony, 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 przez identyfikator grupy uruchomionego procesu. Przy dalszej pracy wszystkie te wartości można zmienić za pomocą poleceń konsoli, które zostaną omówione poniżej.

Jak zmienić uprawnienia

Komenda chmod może zmienić tryb dostępu użytkownika do pliku. Zmiana tych praw w jakikolwiek sposób jest dozwolona tylko dla ich właściciela lub superużytkownika. W systemach uniksowych kod jest zwykle określany jako liczba w formie ósemkowej lub za pomocą specjalnych znaków mnemonicznych (liter). Korzystanie z każdej metody ma swoje zalety i wady. Tak więc za pomocą numerycznego wskazania praw dostępu administrator systemu będzie mógł szybko skonfigurować żądany typ dostępu, a za pomocą kodów mnemonicznych będzie mógł to zrobić dokładniej - np. 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 kolejne argumenty to nazwy plików, do których próbujemy zmienić uprawnienia. W przypadku ustawienia praw jako trzech cyfr, pierwsza liczba określa uprawnienia dla właściciela, druga dla grupy, a trzecia dla 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 usuwania);
  • x - możliwość uruchomienia pliku do wykonania.

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

  • r - użytkownik może czytać dowolne pliki w katalogu;
  • w - z tymi uprawnieniami możesz tworzyć i usuwać pliki w folderze, nawet jeśli niektóre z nich w katalogu należą do innego użytkownika;
  • x - oznacza prawo do wejścia do katalogu. Jeśli masz uprawnienia w do podfolderu, ale nie masz uprawnień do folderu o jeden poziom wyżej, nie ma sposobu, aby dostać się 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 zaimplementować złożone opcje przypisywania uprawnień, a także jak ustawić uprawnienia na 777 za pomocą specyfikacji mnemonicznych chmod.

Jak ustawić uprawnienia do 777 przez SSH

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

  • chmod 711 nazwa_pliku.txt.

Użycie takiego skryptu 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 jedynie go wykonywać.

Przy użyciu kodu 775 przekażemy 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 według własnej nazwy, 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 rekurencyjnie zmieniać uprawnienia wszystkich plików w katalogu i wszystkich podfolderach, należy 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ń 777 do pliku lub katalogu nie będzie stanowiło problemu - wystarczy zalogować się na swój serwer WWW przez SSH i uruchomić polecenie:

  • nazwa pliku chmod 777.

Jak ustawić uprawnienia na 777 w panelu sterowania serwera

Możesz również zaimplementować podobną procedurę za pomocą interfejsu wizualnego Klient FTP Klient FileZilla lub WinSCP SFTP. Aby to zrobić, musisz dokonać autoryzacji na swoim serwerze w jednym z tych programów, wybrać plik lub folder w interfejsie wizualnym, a następnie kliknąć prawym przyciskiem myszy i zaznaczyć pola obok wymaganych uprawnień.

Czasami, w razie pilnej potrzeby, możesz nie mieć dostępu do klienta Windows, więc możesz zmienić prawa dostępu za pośrednictwem panelu sterowania serwera WWW. Aby to zrobić, korzystając z menedżera plików w panelu sterowania, wybierz wymagane pliki i kliknij przycisk Zmień uprawnienia. Następnie będziesz musiał również 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 pliku to rwxrwxrwx - pełna kontrola dla wszystkich) Odwołaj pozwolenie na wykonanie pliku dla wszystkich użytkowników i grup:

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

Anulowanie zapisu 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 plik u+x (rwxr–r–)

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

$ chmod g=u plik (rwxrwxr–)

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

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

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

Uprawnienia do odczytu, zapisu, wykonywania 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 pliku dla właściciela i dostępu tylko do odczytu dla grupy i innych użytkowników:

$ plik chmod 744 (rwxr-r-)

Nadanie 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 i 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 do plików do odczytu, zapisu, wykonywania przez właściciela i odczytu, wykonywania przez grupę i innych:

$ plik chmod 755 (rwxr-xr-x)

Zezwalanie na dostęp do odczytu i wykonywania pliku użytkownikowi i innym osobom oraz odmawianie dostępu grupie:

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

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

$ chmod 755 *

W wyniku wykonania tego polecenia właściciel otrzyma pełne prawa (odczyt, modyfikacja, wykonywanie) do wszystkich plików w bieżącym katalogu, podczas gdy grupa i inni użytkownicy otrzymają tylko do odczytu i wykonywania. Jeśli chcesz, aby Twoje działania były propagowane rekurencyjnie (w tym wszystkie podkatalogi), użyj opcji -R:

$ chmod -R 777 *

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

Zmień uprawnienia tylko dla katalogów (rekurencyjnie)

$ find /path/to/base/dir -type d -exec chmod 755 () +

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

$ chmod 755 `znajdź/ścieżkę/do/bazy/katalogu -typ d`

$ znajdź /ścieżka/do/bazy/katalog -type d -print0 | xargs -0 chmod 755

Zmień uprawnienia tylko dla plików (rekurencyjnie)

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

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

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

$ znajdź /ścieżka/do/bazy/katalog -type f -print0 | xargs -0 chmod 644

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

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

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

    r - prawo do odczytu danych.

    w - prawo do zmiany treści (zapis - tylko zmiana treści, ale nie usuwanie).

    x - prawo do wykonania pliku.

Zatrzymajmy się trochę bardziej po prawej stronie, aby wykonać plik. Faktem jest, że w Linuksie (Unix) można wykonać dowolny plik. To, czy jest to plik wykonywalny, nie zależy od jego rozszerzenia (koncepcja rozszerzenia jest nieobecna w system plików Unix) oraz dla uprawnień 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żna odczytać zawartość katalogu, czyli uzyskać w nim listę obiektów)

    w - prawo do zmiany zawartości katalogu (możesz tworzyć i usuwać obiekty w tym katalogu, a jeśli masz uprawnienia do zapisu, to 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 jako pierwsze, a nawet jeśli masz wszystkie niezbędne prawa do obiektu, który jest głęboko zakopany w łańcuchu katalogów, ale nie masz prawa „X” dostępu do przynajmniej jednego katalogu na ścieżce do tego pliku, to nie przebijesz się do niego)

W systemach Linux (Unix) wszystkie te uprawnienia nadaje główny administrator komputera, do którego dostęp uzyskuje poprzez podanie hasła. A jeśli większość obiektów ma prawa dostępu tylko do odczytu (Chmod), wirusy praktycznie nie będą miały nic do roboty na takim komputerze. nie będą mogli się tam zapisać ani wtedy się wypeł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) dzielą się 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. Na przykład, gdy łączysz się z serwerem przez FTP, logujesz się za pomocą swojej nazwy użytkownika (i hasła), a następnie serwer przypisuje cię do grupy „użytkownik” („u)”. Inni użytkownicy, którzy również łączą się przez FTP z serwerem, zostaną przypisani do grupy „grupa” („g”), a użytkownik, który wejdzie na Twoją stronę za pomocą przeglądarki, trafia do grupy „świat” („o”).

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

    pierwsze prawa dla właściciela - „u”

    następnie dla grupy - „g”

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

Po przypisaniu użytkownika do określonej grupy serwer nadaje mu uprawnienia do działania na obiektach, po czym użytkownik będzie mógł czytać, zapisywać lub wykonywać plik (w zależności od tego, co jego grupa może zrobić z tym obiektem) . Aby zobaczyć zawartość folderu, musi on posiadać atrybut odczytu „r” (dla grupy, do której serwer przypisał użytkownika). Aby utworzyć plik lub folder w istniejącym, musi on mieć ustawiony atrybut Chmod 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 do niego i wykonywania, a wszyscy pozostali użytkownicy mają tylko prawo do odczytu. Taki wpis w 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 użytkownik jest nadany 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 i folderami Chmod

Nic nie można zrobić

Odmowa dostępu do katalogu i jego podkatalogów

Może wyświetlać i edytować zawartość

Może dodawać, usuwać, zmieniać plik folderu

Uruchom, jeśli plik jest binarny

Użytkownik może uruchomić plik binarny, o którym wie, że istnieje, dostęp do katalogu lub jego odczyt są zabronione

Składnia Chmod Numeryczna (777)

Widać, że tutaj używamy wpisów using Litery łacińskie i myślników, ale pewnie już się zetknąłeś z tym, że zwykle Chmod 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) zostaje zastąpione przez 2

    x (wykonanie) zostaje zastąpione przez 1

0 oznacza nic nie robić (co jest zaznaczone łącznikiem w notacji alfabetycznej) Wróćmy do przykładu zapisu praw dostępu, który podałem nieco wcześniej: rwx r-- r--. Jeśli zamienimy w nim litery i myślniki na cyfry, zgodnie z opisaną regułą, a jednocześnie dodamy cyfry w każdej trójce, otrzymamy cyfrową postać tego wpisu: 744. Czyli: 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 (odczyt i wykonanie)

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

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

Ta tabela zawiera wszystkie możliwe kombinacje Chmod w postaci numerycznej:

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łów” (wszyscy inni), więc aby pracować z witryną, musimy najpierw spojrzeć na ostatnią (trzecią) cyfrę Chmod. Aby skrypt „uruchomił plik” podczas pracy użytkownika z serwisem wystarczy, że zostaną na nim ustawione prawa dostępu (Chmod) zaczynając od „4” (r-- – tylko do odczytu) (5, 6,7 są również odpowiednie, ale byłoby to przesadą ze względów bezpieczeństwa.

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

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

Teczki 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)

Akta 644

Gdybyś miał witrynę składającą się z jakiegoś HTML, mógłbyś tak wszystko zostawić. Ale nowoczesne witryny są zbudowane na silnikach i mogą istnieć obiekty, do których należy pisać w imieniu użytkowników z grupy „świat” - o (wszyscy inni). Mogą to być foldery służące do buforowania stron lub takie, do których w trakcie pracy z serwisem będą ładowane obrazki itp. Oczywiście, jeśli uzyskujesz dostęp do serwisu przez FTP, możesz zapisywać do tych plików lub folderów, ale działa z interfejsem strony jako zwykły użytkownik, mogą wystąpić problemy. Dlatego do instalacji niektórych Chmods należy podchodzić wybiórczo.

Podczas pracy z plikami zlokalizowanymi na serwerze WWW, często zachodzi konieczność ustawienia lub zmiany praw dostępu do folderów i plików (chmod) widok 777. W rodzinie serwer Systemy operacyjne Unix prawa dostępu (chmod) typu 777 regulują takie działania: odczyt, zapis do folderu lub pliku oraz wykonanie pliku.

Czym 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 lub oprogramowanie przed nieautoryzowanym dostępem do ważnych (systemowych) informacji.

Jeżeli system operacyjny jest jednoużytkownikowy, np. jako domowa wersja (domowa) Windowsa, to nie ma sensu szczególnie ograniczać władzy użytkownika nad jego 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 powinien „pozostawić ich z boku”. W celu zróżnicowania możliwości i stopnia 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 nadawane są na poziomie Administrator systemu oraz określić możliwości techniczne każdego użytkownika do jego operacji z plikami i folderami 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, zapobiegając w ten sposób nieautoryzowanej ingerencji w działanie systemu (programu, serwera, strony internetowej) lub zmiany 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 - jest zawsze w pogotowiu - za każdym razem, gdy użytkownik uzyskuje dostęp do pliku lub folderu, przy każdej akcji w systemie operacyjnym skrupulatnie sprawdza, czy użytkownik może pracować z tym plikiem lub folderem . To są właśnie „uprawnienia”. W związku z tym możliwości użytkownika są ograniczone w działaniach, które on (użytkownik) może wykonać z plikiem lub folderem w kontrolowanym przez niego obszarze komputera.

Uprawnienia w systemie Unix

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, Unix, jak iw 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, często nazywane .

Uprawnienia (chmod), takie jak 777 dla serwer Systemy operacyjne Unix regulują uprawnienia lub zakazy 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 są zapisywane jako pojedyncza linia składająca się z trzech cyfr, gdzie każda cyfra odnosi się do innego typu grupy użytkowników. Z kolei wszyscy użytkownicy dzielą się 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, podobnie jak 777, to ustawione prawa dostępu dla trzech grup użytkowników folderu lub pliku jednocześnie, gdzie - każda z trzech cyfr wskazuje 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 inni 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 jest realizowany 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 do strona z poziomu 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 lub członka grupy właściciela, albo wszystkich innych 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.

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

Ale różnice między dwiema pierwszymi grupami - właścicielem i członkiem jego grupy - są mocno zatarte i zawoalowane. Tu już zaczyna się dżungla pakietu hostingowego i indywidualnego podejścia do każdej sprawy.

Odniesienie:
Wszystkie pliki w systemie Unix (Linux) mogą mieć dwóch właścicieli: ich bezpośredniego właściciela-twórcę (właściciel użytkownika) i jego grupę (właściciel 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.

Tak więc w systemie operacyjnym serwera Unix właściciel pliku lub folderu jest bezpośrednio administratorem serwera. Wszyscy pozostali, którym właściciel umożliwi dostęp do plików na swoim serwerze i którzy będą łączyć się z tym serwerem przez protokół FTP/SSH, są członkami grupy właściciela.

W ramach dzierżawy miejsca na dysku odnosi się do miejsca na serwerze zajmowanego przez pliki witryny. Z reguły są to niedrogie pakiety hostingowe, których użytkownicy nie mają dostępu do panelu administracyjnego serwera (nie mylić z CP - panelem kontrolnym konta). W związku z tym administratorzy witryn (właściciele) siedzący na takich pakietach, gdy łączą się z serwerem za pośrednictwem protokołu FTP, należą wyłącznie do grupy właścicieli. Natomiast sam właściciel (administrator serwera) jest 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 witrynie jest sam host, podczas gdy dzierżawca miejsca na dysku jest tylko członkiem grupy właściciela.

W przypadku najemców serwerów (rzeczywistych i wirtualnych) – sytuacja wygląda nieco inaczej. Wynajmujący serwer oczywiście jednocześnie sam instaluje system operacyjny - jest bezpośrednim właścicielem plików tego systemu. Ale tworzenie grupy i dodawanie do niej innych użytkowników to już jego sprawa, właściciela.
Co wynika z powyższego?

A wniosek jest taki: - Dzierżawcy przestrzeni dyskowej nie muszą przejmować się pierwszą cyfrą typu (chmod) 777, ponieważ nie są właścicielami i nigdy nie będą właścicielami swoich plików. Dla nich pierwszą cyfrą powinno być zawsze siedem. - Najemcy serwerów (rzeczywistych i wirtualnych) nie muszą przejmować się drugą cyfrą formularza (chmod) 777. Pod warunkiem, że nie stworzyli i nie zamierzają tworzyć żadnych grup użytkowników na swoim serwerze. Tutaj jako takie nie ma wyraźnego i silnego rozróżnienia. Raczej będzie tak, 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 stworzy, wtedy pomyśli, co zrobić z drugą cyfrą.

Co oznaczają liczby 777 lub 456?

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

  • 4 = Czytaj (prawo do czytania)
  • 2 = Napisz (prawo do zapisu)
  • 1 = Wykonaj (pozwolenie na wykonanie)

Na przykład:

  • 6=4+2 - Odczyt+zapis (prawo do czytania + prawo do zapisu)
  • 5=4+1 - Odczyt+wykonanie (prawo do odczytu + prawo do wykonania)
  • itp.

Wszystkie możliwe 7 opcji dodawania tych trzech cyfr
o ustalaniu 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 — odczyt, wykonanie (odczyt i wykonanie)
  • 4 = 4 - Odczyt (tylko do odczytu)
  • 3 = 1+2 - Zapisz, wykonaj (nagraj i wykonaj)
  • 2 = 2 - Zapis (tylko zapis)
  • 1 = 1 — Wykonaj (tylko wykonanie)

W ten sposób stawiają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 grupowa, członek grupy właściciela
    Druga cyfra = 6
    Oznacza to, że członek grupy właścicielskiej 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 jasne jest, że ustawiając prawa dostępu za pomocą kombinacji liczb 777 (trzy osie), otwieramy pełny dostęp do pliku dla absolutnie wszystkich grup 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 nadpisywania i wykonywania pliku dla wszystkich oprócz 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”, a dalej – do grupy „Wszyscy inni”. Ale nie odwrotnie!

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

Teraz, gdy stało się absolutnie 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, potrzebujesz dowolnego menedżer plików, który jest w stanie ustanowić i utrzymywać 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 firmy Filezilla, mimo że jestem fanem Total Commander.

Aby ustawić uprawnienia (chmod), takie jak 777, wchodzimy na serwer przez FTP na prawach Administratora!, po parze 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 zaznaczyć lub odznaczyć pola wyboru (znaczniki wyboru) w pobliżu niezbędnych elementów lub wprowadzić wymagany kod formularza 777 z klawiatury w oknie, które zostanie otwarte. Wszystkie menedżery plików FTP obsługują obie metody.

Zobacz wrak 777 na Denver

Jak wszyscy kosmici z Kosmosu regularnie komunikuję się z przedstawicielami różnych cywilizacji pozaziemskich, którzy zaczynają budować swoje tereny jeszcze przed przybyciem na Ziemię.

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

Pliki w systemie Linux mają dwóch właścicieli

Konieczne jest prawidłowe ustawienie uprawnień do plików i folderów. Możesz to zrobić za pomocą FileZilli. Ogólnie rzecz biorąc, każdy serwer wymaga własnych, specyficznych ustawień, których najlepiej dowiedzieć się od dostawcy usług hostingowych. Ale zwykle 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 szablonu, 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ściciel użytkownika) i grupę (właściciel grupy) rozumianej jako pewna lista użytkowników, a ponadto właściciel pliku nie musi być członkiem grupy, do której należy plik. Każdy użytkownik może być jednocześnie członkiem kilku grup, z których jedna nazywa się podstawową (podstawową), a cała reszta - dodatkową (uzupełniającą). Daje to większą elastyczność w organizowaniu dostępu do określonego pliku. Dzielenie się bardzo łatwo jest zorganizować jakiś zasób, wystarczy go stworzyć Nowa grupa i uwzględnić w nim wszystkich tych, którzy naprawdę tego potrzebują, a jeśli ktoś, załóżmy, przeniósł się do innego działu i nie ma już potrzeby korzystania z tego pliku. I wszystko jest bardzo proste, wystarczy wyłączyć tę grupę. No właśnie, co zrobić z resztą, czy naprawdę nie będą mogli przynajmniej odczytać zawartości akt, czy też będą musieli być za każdym razem włączani i wykluczani z grupy.
Ale dla wszystkich innych (innych), które nie należą ani do właściciela użytkownika, ani do właściciela grupy, prawa dostępu są ustalane osobno iz reguły najbardziej minimalne. Zwykle właścicielem pliku jest użytkownik, który go utworzył. dany plik. Ponownie grupa właścicieli utworzony plik jest ustawiona na grupę podstawową użytkownika, który utworzył plik, ale w niektórych wersjach systemu Unix właściciel grupy jest dziedziczony po właścicielu grupy katalogu, w którym plik jest tworzony. Aby zmienić właściciela pliku, użyj komenda 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 w katalogu nie zmienić, aby tak się stało, najlepiej użyć flagi -R (chown -R). Korzystając z tego polecenia (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 tej komendy jest podobna do poprzedniej: # chgrp sales /home/sales/*. Nawiasem mówiąc, polecenie chown umożliwia natychmiastowe ustawienie grupy właściciela, w tym celu należy natychmiast umieścić dwukropek 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 * (czyli 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 dla jakiegoś pliku. Operacje te mogą być wykonywane przez superużytkownika i właściciela pliku (w pochodnych BSD UNIX tylko superużytkownik). Jeśli wszystko jest jasne z pierwszym, 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, ​​szczerze to zrobiłem nie znaleźć takiej aplikacji. Ale grupę, jeśli jesteś właścicielem pliku, możesz zmienić tylko na swoją podstawową (domyślnie ma taką samą nazwę jak nazwa odpowiedniego użytkownika). Wszystkie te ograniczenia zostały wprowadzone z kilku powodów, aby nikt nie mógł wykraść żadnego złośliwego pliku, a jeśli komputer ma limit miejsca na dysku dla konkretnego użytkownika, nie byłoby możliwe po prostu zastąpienie właściciela przez zastąpienie go.
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 są ustawiane dla każdej z trzech grup użytkowników oddzielnie. Co więcej, tylko użytkownik-właściciel i oczywiście superużytkownik mogą to zrobić. Komenda chmod służy do ustawienia odpowiednich uprawnień. Stosowany jest w dwóch postaciach: bezwzględnej – gdy stare prawa są ignorowane, a nowe są ustanawiane bezwarunkowo, oraz względnej – gdy inne są dodawane/usuwane do istniejących praw. Postać bezwzględna polega na określeniu uprawnień do pliku 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.

Dobrego zdrowia, drodzy czytelnicy bloga! Wszyscy chcielibyśmy, aby każdy lub folder znajdujący się na serwerze hostingowym i należący do serwisu był jak najbardziej chroniony przed nieautoryzowanym 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 Uniksie różnią się od zasad pracy znanych wielu na sali operacyjnej. systemu Windows, gdzie ochrona w tym aspekcie nie jest tak silna, co czasami prowadzi do katastrofalnych konsekwencji w postaci wirusowej infekcji systemu.

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

W systemach opartych na Uniksie sytuacja jest inna i istnieje możliwość bardzo utrudnienia życia przestępcom, którzy próbują wykorzystać twoją ciężką pracę przez długi czas. Mianowicie poprawnie skonfiguruj prawa dostępu CHMOD. Naszym zadaniem jest nadanie minimalnych możliwych 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 do poważnego wzmocnienia. Oczywiście w tym przypadku edycja niektórych plików potrwa nieco dłużej, ale tutaj trzeba wybrać: albo optymalizację bezpieczeństwa systemu, albo… Poniżej postaram się usystematyzować informacje na temat CHMOD (prawa dostępu), bo tam jest kilka niuansów, które webmaster powinien znać. Zacznijmy więc.

Prawa dostępu są różne 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 inni użytkownicy

Jeśli łączysz się z serwerem przez i logujesz się przy użyciu swojej nazwy użytkownika i hasła, zostaniesz zidentyfikowany jako "użytkownik"(u) jeśli ktoś inny łączy się przez FTP, zostanie to zdefiniowane jako Grupa(g) jeśli użytkownik korzysta z przeglądarki, 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ć tylko edycji treści - nagrywanie, ale nie kasowanie)
  • x (eXutive) - prawo do wykonania pliku

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

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

Łącznik „-” oznacza brak jakichkolwiek praw. Wszystkie te uprawnienia są nadane przez administratora, który uzyskuje tę możliwość, wprowadzając hasło. 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 u ma wszystkie możliwe prawa: do odczytu, zapisu i wykonywania. Użytkownicy sklasyfikowani jako g (grupa) są tylko do odczytu i zapisu, wszyscy inni (w) są tylko do odczytu. Wpis CHMOD wyglądałby wtedy tak: „rwx rw- r- -”.

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

Częściej jednak webmasterzy w swojej praktyce muszą przypisywać pewne prawa dostępu w kategoriach cyfrowych:

  • r (czytaj) - 4
  • w (napisz) - 2
  • x (wykonanie) - 1
  • - (brak praw) - 0

Wróćmy teraz do powyższego przykładu przypisywania uprawnień „rwx rw- r- -”. Aby wyświetlić uprawnienia każdego użytkownika, stosuje się dodanie jego uprawnień (r odczyt + w zapis + x wykonanie). W ten sposób część rekordu dla właściciela pliku u (użytkownika) - „rwx” zmieni się na 7 (4+2+1). Dla członka grupy g (group) - "rw-" w 6 (4+2+0) a dla innych użytkowników o (world) - "r- -" w 4 (4+0+0). W ramach podsumowania przedstawię tabelę przestawną z wartościami uprawnień CHMOD, wyrażonymi zarówno literami, jak i liczbami:


Teraz przedstawię kolejną tabelę, która odzwierciedla sumę uprawnień CHMOD dla wszystkich grup użytkowników w formacie liczbowym:


Są to główne kombinacje, które są najczęściej wykorzystywane w pracy webmastera. Reszta powstaje przez analogię. Jeśli jesteś administratorem witryny lub bloga, ale pracujesz z 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 CMS (systemy zarządzania treścią), do których należy WordPress, są masowo wykorzystywane do budowy witryny. I tutaj mogą istnieć obiekty, do których należy pisać z grupy użytkowników „world”. Mogą istnieć foldery, do których ładowana jest zawartość, w tym obrazy.

Dlatego nominacje prawa chmoda w niektórych plikach muszą być zróżnicowane. Jeżeli wejdziesz do zarządzania stroną przez FTP możesz wykonać dowolną czynność jednak w wielu przypadkach pracujemy z naszym projektem poprzez iw 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ą niedoszacowane, wówczas wzrasta zagrożenie 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 pliki są stale zapisywane i usuwane (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 podczas pracy z zasobem musisz wprowadzić jakieś zmiany, ale ze względu na obecność zakazu 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ą. Aby to zrobić, otwórz program i połącz się przez 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 naciskiem prawy przycisk myszy, wybierz „Uprawnienia do plików”. Następnie pojawi się okno dialogowe. „Zmień atrybuty pliku”:

Tutaj przypisujemy pożądane wartości CHMOD dla wybranych (lub wybranych) plików. Ale dzieje się tak 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ę okno analogowe, nieco inne niż powyższe, a mianowicie:

Widzisz, tutaj są 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. Po zaznaczeniu poniższego pola wyboru uaktywniona zostanie grupa ustawień znajdująca się poniżej, a ponadto będziesz musiał wybrać, w jaki sposób 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 pojawiła się w świecie webmasteringu z systemów typu Linux (Unix), na których działa większość hostingów.

A sama nazwa Chmod to nazwa programu w Linuksie, który pozwala przypisywać prawa dostępu do różnych obiektów. A ponieważ Twoja witryna jest zainstalowana na serwerze z systemem Linux (Unix) w takiej czy innej odmianie, praca z obiektami Twojej witryny będzie podlegać zasadom ustanowionym przez system operacyjny Linux (Unix).

W systemie Windows praktycznie wszystkie pliki mają ustawione maksymalne uprawnienia, co w rzeczywistości prowadzi do dominacji na naszych komputerach, a także z kolei 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 jest 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 pozostawisz przypadkowi i nie zawracasz sobie głowy ustawieniem niezbędnych uprawnień, prawdopodobieństwo włamania się na Twój zasób lub zainfekowania 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, w oparciu o zasadę minimalizmu. Te. nadawania obiektom minimalnych uprawnień niezbędnych do prawidłowego działania serwisu.

Najpierw zrozummy 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ą trochę inne znaczenie.

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

  • r - prawo do odczytu danych.
  • w - aby zmienić treść (nagrywanie - tylko zmiana treści, nie kasowanie).
  • x - aby wykonać plik.

Zastanówmy się trochę nad możliwością wykonania pliku. Rzecz w tym, że w Linuksie można wykonać dowolny plik. O tym, czy jest to plik wykonywalny, decyduje nie jego rozszerzenie (pojęcie rozszerzenia nie występuje w systemie plików Unix), ale prawa dostępu Chmod. Jeśli jakikolwiek plik ma prawo wykonania „X”, oznacza to, że można go uruchomić do wykonania.

W przypadku katalogów możliwe jest:

  1. r - prawo do odczytu katalogu (można odczytać zawartość katalogu, czyli uzyskać w nim listę 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 (jest to zawsze sprawdzane jako pierwsze i nawet jeśli masz wszystkie niezbędne uprawnienia do obiektu, który jest głęboko zakopany w łańcuchu katalogów, ale nie masz atrybutu „X” umożliwiającego dostęp do co najmniej jednego katalogu na ścieżkę do tego pliku, to nie przejdziesz do niego)

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 prawa tylko do odczytu, to na takim komputerze wirusy praktycznie nie będą miały nic do roboty. nie będą mogli się tam zapisać ani wtedy się wypeł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 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. Na przykład, gdy łączysz się z serwerem przez FTP, logujesz się za pomocą swojej nazwy użytkownika (i hasła), a następnie serwer przypisuje cię do grupy „użytkownik” („u)”.

Inni użytkownicy, którzy również łączą się przez FTP z serwerem, zostaną przypisani do grupy „grupa” („g”), a odwiedzający, który wejdzie na Twoją stronę za pomocą przeglądarki, trafia do grupy „świat” („o”).

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

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

Po tym, jak serwer przydzieli odwiedzającego do określonej grupy, przyznaje mu prawa do działania na obiektach, po czym odwiedzający będzie mógł czytać, zapisywać lub wykonywać plik (w zależności od tego, co jego grupa może zrobić z tym obiektem) .

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

Dla jasności spójrzmy na przykład, gdzie właściciel pliku („użytkownik” - „u”) ma wszystkie prawa: do odczytu, zapisu do niego i wykonywania, a wszyscy pozostali użytkownicy mają tylko uprawnienie do odczytu. Taki wpis w 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 przydzielony przez serwer do grupy - "g"), "r--" (ta pozycja ustawia uprawnienia do obiektu dla wszystkich pozostałych użytkowników - "o").

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

Okazuje się, że istnieją trzy grupy użytkowników i trzy możliwe działania z przedmiotami. Jeszcze nie zdezorientowany? Odłóżmy to wszystko na półki w postaci tabletek. Najpierw zobaczmy, czym się różnią:

Jak również tabliczka przedstawiają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 wyświetlać i edytować zawartość

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

Uruchom, jeśli plik jest binarny

Użytkownik może uruchomić plik binarny, o którym wie, że istnieje, dostęp do katalogu lub jego odczyt są zabronione

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

Widzisz, że tutaj wpisy z literami łacińskimi i myślnikami są używane do opisu praw dostępu, ale pewnie już się z tym spotkałeś Chmod jest zwykle podawany liczbowo, na przykład dobrze znana kombinacja: 777, dopuszczająca wszystko i wszystkich.

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

  1. r (odczyt) zostaje zastąpione przez 4
  2. w (rekord) zostaje zastąpione przez 2
  3. x (wykonanie) zostaje zastąpione przez 1
  4. 0 oznacza - nic nie rób (co oznacza myślnik w zapisie alfabetycznym)

Wróćmy do przykładowego wpisu, który podałem nieco wcześniej: rwx r-- r-- . Jeśli zamienimy w nim litery i myślniki na cyfry, zgodnie z opisaną regułą 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 stosunku do plików lub folderu. Na przykład:

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

Ta tabela zawiera wszystkie możliwe kombinacje uprawnień, zapisane numerycznie:

A teraz spójrzmy na różne kombinacje wpisów 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 Twój zasób należą do grupy „słowo” (wszyscy inni), więc aby pracować z witryną, najpierw musimy spojrzeć na ostatnią (trzecią) cyfrę ten wpis.

Aby skrypt „uruchomił plik” podczas pracy użytkownika z witryną, wystarczy ustawić na nim prawa, zaczynając od „4” (r-- - tylko do odczytu) (5,6,7 też się nadają, ale będą zbędne pod względem bezpieczeństwa).

Dla katalogu, w którym znajduje się plik tego skryptu, musisz ustawić co najmniej „5” (r-x - możesz przejść do katalogu i przeczytać jego zawartość, nie możesz usunąć ani dodać). 7 też się nadaje, ale będzie też zbędny pod względem bezpieczeństwa.

Jeśli potrzebujesz, aby skrypt nie tylko odczytywał, ale także „zapisywał” niektóre dane (na przykład wprowadzane przez gościa), to minimalne uprawnienia do „folderu” nadal będą wynosić „5”, ale dla „pliku” będzie potrzebował „6” (odczyt i zapis).

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

Jeśli masz zasób składający się tylko z strony HTML, to można by było zostawić wszystko tak, jak jest. Ale nowoczesne witryny są zbudowane na silnikach i mogą istnieć obiekty, do których należy pisać w imieniu odwiedzających z grupy „świat” - o (wszyscy inni). Mogą to być katalogi służące do buforowania stron lub takie, w których w trakcie pracy z serwisem zostaną załadowane obrazki itp.

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

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

dla folderów, w których pliki mają być zapisywane i usuwane (na przykład dla pamięci podręcznej)

dla prostych plików 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 to wszystko można zastosować w praktyce w Twojej witrynie? W zasadzie wszystko jest proste. Aby przypisać prawa dostępu, możesz:

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

Będziesz musiał zastąpić nazwa_pliku_x.php i nazwa_katalogu_x prawdziwymi nazwami plików i folderów, które chcesz zmienić. Odpowiednio, dla plików zostanie ustawione 666, a dla katalogów 777. Umieść ten kod PHP w pliku za pomocą dowolnego notatnika tekstowego (zalecane) i nadaj mu rozszerzenie .php, na przykład prava.php.

skopiuj plik 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 wprowadź na klawiaturze. To wszystko, teraz uprawnienia zostaną całkowicie zmienione za pomocą PHP.

W przypadku Joomla, zaraz po zainstalowaniu, możesz ustawić 777 na następujące katalogi:

Administrator/kopia zapasowa/ 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ń Chmod do większości z powyższych katalogów należy w celu zwiększenia bezpieczeństwa serwisu wrócić do 755. Będziesz musiał zostawić 777 dla katalogów z pamięcią podręczną, z kopią zapasową i ze zdjęciami.

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

Dokładnie takich samych porad mogę udzielić odnośnie ustawiania praw dostępu do obiektów w silnikach SMF i WordPress. Pożądane jest, jeśli to możliwe, wyjazd 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 być może trochę więcej, w razie potrzeby) oraz dla plików - 644.

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

Jeśli podczas pracy z witryną występuje problem z niemożnością zapisania ustawień do jakiegoś pliku lub niemożnością utworzenia jakiegoś katalogu, możesz tymczasowo nadać im wysokie prawa (na przykład 777), a następnie zwrócić wszystko z powrotem (z dala od szkód). I w żadnym wypadku nie odchodź(dla ułatwienia korzystania z serwisu) nieracjonalnie wysoki 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 lokalny serwer oraz przykład jego wykorzystania do instalacji WordPressa na komputerze
Co się stało Adres URL Jaka jest różnica między absolutnym a linki względne dla witryny
Wyszukiwanie 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Ł: