- Techniczne rozróżnienie pomiędzy modyfikacją uprawnień dostępu za pomocą polecenia chmod a zmianą właściciela zasobów za pomocą polecenia chown.
- System reprezentacji uprawnień oparty na notacji ósemkowej i symbolicznej dla użytkowników, grup i innych.
- Wdrażanie strategii bezpieczeństwa opartych na zasadzie najmniejszych uprawnień w celu zapobiegania powstawaniu luk w zabezpieczeniach serwerów.
Jeśli odważyłeś się zarządzać własnym serwerem VPS lub maszyną dedykowaną, z pewnością zdajesz sobie sprawę, że Linux to system zaprojektowany od podstaw z myślą o sieci. Dlatego bezpieczeństwo jest najważniejsze , ponieważ kontrolowanie, kto może odczytywać, edytować lub uruchamiać plik, zapobiega przedostaniu się informacji w niepowołane ręce lub awariom całego systemu spowodowanym przez złośliwy proces.
Aby z łatwością poruszać się po tym środowisku, sama umiejętność uruchamiania poleceń nie wystarczy; trzeba zrozumieć logikę stojącą za własnością plików. W Linuksie każdy zasób należy do użytkownika i grupy , i właśnie tutaj z pomocą przychodzą narzędzia do dostosowywania tych uprawnień, pozwalające zabezpieczyć system bez blokowania działania aplikacji.
Zrozumienie anatomii zezwoleń
Kiedy uruchamiasz polecenie ls -l W terminalu zobaczysz ciąg znaków, który wygląda jak tajny kod, coś w stylu -rwxr-xr--Nie martw się, to prostsze niż się wydaje. Pierwsza postać mówi nam Jaki typ żywiołu mamy przed sobą?Myślnik oznacza zwykły plik, „d” folder (katalog), a „l” dowiązanie symboliczne. Istnieją również mniej popularne znaki, takie jak „s” dla gniazd lub „p” dla potoków.
Poniższe dziewięć znaków jest podzielonych na trzy równe zestawy po trzy znaki. Pierwszy zestaw jest przeznaczony dla właściciela (osoby, która utworzyła plik), drugi dla grupy właścicieli , a trzeci dla wszystkich pozostałych użytkowników w systemie. Każdy zestaw trzech znaków może zawierać litery „r” (odczyt), „w” (zapis) i „x” (wykonywanie) lub myślnik, jeśli takie uprawnienie nie zostało udzielone.
Co właściwie oznacza każde pozwolenie?
- Czytanie (r): W pliku pozwala go otworzyć i zobaczyć, co jest w środku. Jeśli mówimy o folderze, oznacza to, że możesz wyświetl listę plików i podkatalogów zawierający.
- Pisanie (w): Daje Ci możliwość modyfikacji zawartości pliku, a nawet jego usunięcia. W przypadku katalogów pozwala Ci tworzyć, usuwać lub zmieniać nazwę elementy w nim zawarte.
- Wykonanie (x): W przypadku pliku jest to uprawnienie umożliwiające uruchomienie skryptu lub programu. W przypadku folderów to uprawnienie jest kluczowe, ponieważ pozwala... dostęp do katalogu za pomocą polecenia
cd.
Polecenie chmod: dostosowywanie dostępu
Polecenie chmod (tryb zmiany) to nasze narzędzie do zmiany tych uprawnień. Można go używać na dwa sposoby: symbolicznie, który jest bardziej intuicyjny, oraz ósemkowo, preferowany przez administratorów ze względu na szybkość.
W tryb symbolicznyUżywamy liter, aby wskazać, kogo dotyczy zmiana (u dla użytkownika, g dla grupy, o dla pozostałych, a dla wszystkich) oraz symboli takich jak „+”, aby dodać uprawnienia, lub „-”, aby je usunąć. Na przykład, jeśli chcesz, aby grupa mogła zapisywać do pliku, użyj chmod g+w archivo.txtTo bardzo elastyczny sposób dostosuj uprawnienia w razie potrzeby bez zmiany reszty konfiguracji.
El tryb ósemkowy Używa liczb opartych na systemie binarnym. Każde uprawnienie ma wartość: odczyt to 4, zapis to 2, a wykonanie to 1. Suma tych wartości daje nam liczbę od 0 do 7. Na przykład wartość 7 (4+2+1) oznacza pełny dostęp, a 5 (4+0+1) oznacza odczyt i wykonanie. Zatem polecenie takie jak chmod 755 carpeta dotacje całkowita kontrola właściciela i dostęp tylko do odczytu/wykonywania dla grupy i innych osób.
Zarządzanie nieruchomością za pomocą chown i chgrp
Czasami, nawet jeśli uprawnienia są poprawne, plik nie będzie działał, ponieważ właściciel nie jest odpowiednią osobą. Wtedy z pomocą przychodzi [odpowiednie narzędzie/aplikacja]. chown (zmień właściciela). To polecenie pozwala zmień użytkownika i grupę którzy posiadają plik. Najczęściej stosowana składnia to chown usuario:grupo archivo.
Na serwerach internetowych bardzo często zdarza się, że pliki należą do użytkownika serwera (np. www-data w Apache lub Nginx), aby witryna mogła zapisywać w określonych folderach. Jeśli chcesz zastosować tę zmianę do folderu i wszystkiego, co się w nim znajduje, musisz użyć opcja rekurencyjna -Rna przykład bieganie chown -R www-data:www-data /var/www/html.
Zarządzanie użytkownikami i grupami w systemie
Aby wszystko powyższe miało sens, najpierw musimy zarządzać tym, kim są ci użytkownicy. W Linuksie polecenia takie jak useradd o adduser aby tworzyć konta i passwd aby przypisać im klucz. Wszystkie te informacje są przechowywane w ważnych plikach, takich jak / Etc / passwd (szczegóły konta) i / etc / shadow (zaszyfrowane hasła).
Grupy są niezbędne, aby uniknąć konieczności przypisywania uprawnień pojedynczo. groupadd stworzyliśmy grupę i z usermod -aG Dodajemy do niego użytkowników. W ten sposób możemy dać zezwolenia zbiorowe dla zespołu roboczego w określonym folderze, nie narażając bezpieczeństwa reszty systemu.
Poty i wyższe przywileje
Nie zaleca się ciągłej pracy jako root, ponieważ błąd może spowodować skasowanie całego systemu. W tym celu używamy sudoco pozwala nam wykonywać polecenia z uprawnieniami superużytkownika. Konfiguracja tego, kto co może zrobić, znajduje się w pliku / etc / sudoersktóre zawsze należy edytować poleceniem visudo dla rozwiązywanie problemów z błędami sudo w systemie Linux i uniknąć błędów składniowych, które mogłyby spowodować wykluczenie nas z systemu.
Bezpieczeństwo i najlepsze praktyki na serwerach
Częstym błędem popełnianym przez wielu początkujących jest przypisywanie uprawnień 777 do folderu, gdy coś nie działa. To otwiera szeroko drzwi dla każdego atakującego. Najlepiej jest postępować zgodnie z zasadą najmniejszych uprawnień : przyznawać tylko minimalny dostęp niezbędny do wykonania zadania.
Zasadniczo pliki powinny mieć uprawnienia 644 (właściciel ma prawo zapisu, pozostali mogą tylko odczytywać), a foldery 755. W przypadku wyjątkowo poufnych plików, takich jak klucze SSH lub pliki konfiguracyjne chronione hasłem (.env), właściwym ustawieniem jest uprawnienie 600, gwarantujące, że nikt inny poza właścicielem nie będzie mógł odczytać ich zawartości.
Jeśli na Twojej stronie internetowej pojawia się uciążliwy błąd 403 Forbidden, najprawdopodobniej jest to spowodowane problemem z własnością lub uprawnieniami. Przed wprowadzeniem jakichkolwiek drastycznych zmian sprawdź, czy serwer WWW jest właścicielem plików i czy katalogi mają ustawiony bit wykonania, umożliwiający nawigację.
Prawidłowe zarządzanie użytkownikami, grupami i uprawnieniami za pomocą narzędzi takich jak chmod i chown to pierwsza linia obrony każdego serwera Linux. Od użycia maski umask do definiowania domyślnych uprawnień, po rekurencyjne zarządzanie katalogami i ścisłą kontrolę sudoers, każda modyfikacja przyczynia się do stworzenia stabilnego i odpornego na potencjalne włamania środowiska, zapewniając współistnienie procesów systemowych i użytkowników bez naruszania integralności danych.
Pisarz z pasją zajmujący się światem bajtów i technologii w ogóle. Uwielbiam dzielić się swoją wiedzą poprzez pisanie i właśnie to będę robić na tym blogu, pokazywać Ci wszystkie najciekawsze rzeczy o gadżetach, oprogramowaniu, sprzęcie, trendach technologicznych i nie tylko. Moim celem jest pomóc Ci poruszać się po cyfrowym świecie w prosty i zabawny sposób.




