Uprawnienia do plików w systemie Linux / Unix: jak czytać, pisać i zmieniać?

Linux jest klonem UNIX-a, wielodostępnego systemu operacyjnego, do którego dostęp może mieć wielu użytkowników jednocześnie. Linux może być również używany w komputerach mainframe i serwerach bez żadnych modyfikacji. Jednak budzi to obawy dotyczące bezpieczeństwa, ponieważ niechciany lub złośliwy użytkownik może uszkodzić, zmienić lub usunąć kluczowe dane. W celu zapewnienia skutecznego bezpieczeństwa Linux dzieli autoryzację na 2 poziomy.

  1. Własność
  2. pozwolenie

Koncepcja pliku Linux pozwolenie i własność jest kluczowa w Linuksie. Tutaj wyjaśnimy uprawnienia i własność Linuksa oraz omówimy oba. Zacznijmy od Własność.

Kliknij tutaj jeśli film nie jest dostępny

Własność plików systemu Linux

Do każdego pliku i katalogu w systemie Unix/Linux przypisane są 3 typy właściciela, podane poniżej.

Użytkownik

Użytkownik jest właścicielem pliku. Domyślnie osoba, która utworzyła plik, staje się jego właścicielem. W związku z tym użytkownik jest również czasami nazywany właścicielem.

Zarządzanie

Grupa użytkowników może zawierać wielu użytkowników. Wszyscy użytkownicy należący do grupy będą mieli te same uprawnienia dostępu grupy Linux do pliku. Załóżmy, że masz projekt, w którym wiele osób wymaga dostępu do pliku. Zamiast ręcznie przypisywać uprawnienia każdemu użytkownikowi, możesz dodać wszystkich użytkowników do grupy i przypisać uprawnienia do pliku w taki sposób, aby tylko ci członkowie grupy i nikt inny nie mógł czytać ani modyfikować plików.

Inne

Każdy inny użytkownik, który ma dostęp do pliku. Ta osoba nie utworzyła pliku ani nie należy do grupy użytkowników, która może być właścicielem pliku. Praktycznie oznacza to wszystkich innych. W związku z tym, gdy ustawiasz uprawnienia dla innych, jest to również określane jako ustawione uprawnienia dla świata.

Teraz pojawia się wielkie pytanie, w jaki sposób? Linux wyróżnia pomiędzy tymi trzema typami użytkowników, tak że użytkownik „A” nie może wpływać na plik zawierający istotne informacje/dane innego użytkownika „B”. To tak, jakbyś nie chciał swojego kolegi, który pracuje nad Twoim Komputer z systemem Linux, aby wyświetlić obrazy. To jest gdzie Uprawnienia wkraczają, a oni definiują zachowanie użytkownika.

Pozwól nam zrozumieć System uprawnień w systemie Linux.

Uprawnienia plików w systemie Linux

Każdy plik i katalog w systemie UNIX/Linux ma 3 uprawnienia zdefiniowane dla wszystkich 3 właścicieli, omówionych powyżej.

  • Czytać: To uprawnienie daje Ci prawo do otwierania i czytania pliku. Uprawnienie do odczytu katalogu daje możliwość wyświetlania jego zawartości.
  • Pisać: Uprawnienie do zapisu daje ci prawo do modyfikowania zawartości pliku. Uprawnienie do zapisu w katalogu daje Ci prawo do dodawania, usuwania i zmiany nazw plików przechowywanych w katalogu. Rozważmy scenariusz, w którym musisz mieć uprawnienia do zapisu w pliku, ale nie masz uprawnień do zapisu w katalogu, w którym jest przechowywany plik. Będziesz mógł modyfikować zawartość pliku. Ale nie będziesz mógł zmienić nazwy, przenieść ani usunąć pliku z katalogu.
  • Wykonaj: In Windows, program wykonywalny ma zwykle rozszerzenie „.exe” i można go łatwo uruchomić. W systemie Unix/Linux nie można uruchomić programu, jeśli nie ustawiono uprawnień do wykonywania. Jeśli uprawnienie do wykonywania nie jest ustawione, nadal możesz zobaczyć/zmodyfikować kod programu (pod warunkiem, że ustawione są uprawnienia do odczytu i zapisu), ale nie możesz go uruchomić.

Uprawnienia plików w systemie Linux
Uprawnienia plików w systemie Linux/Unix

Zobaczmy uprawnienia do plików w systemie Linux z przykładami:

ls – l na terminalu daje

ls - l

Uprawnienia plików w systemie Linux

Tutaj podkreśliliśmy „-rw-rw-r–”a ten dziwnie wyglądający kod mówi nam o uprawnieniach uniksowych nadawanych właścicielowi, grupie użytkowników i światu.

Tutaj pierwszy '-' oznacza, że ​​wybraliśmy plik.p>

Uprawnienia plików w systemie Linux

W przeciwnym razie, gdyby to był katalog, d zostałby pokazany.

Uprawnienia plików w systemie Linux

Postacie są bardzo łatwe do zapamiętania.

r = uprawnienie do odczytu
w = uprawnienie do zapisu
x = wykonaj uprawnienie
- = brak pozwolenia

Spójrzmy na to w ten sposób.

Pierwsza część kodu to „rw-”. Sugeruje to, że właściciel „Dom” może:

Zezwolenie na plik w systemie Linux

  • Przeczytaj plik
  • Napisz lub edytuj plik
  • Nie może wykonać pliku, ponieważ bit wykonania jest ustawiony na '-'.

Z założenia wiele dystrybucji Linuksa, takich jak Fedora, CentOS, Ubuntuitp. doda użytkowników do grupy o tej samej nazwie co nazwa użytkownika. W ten sposób użytkownik „tom” zostaje dodany do grupy o nazwie „tom”.

Druga część to „rw-”. To dla grupy użytkowników „Dom” i członków grupy może:

  • Przeczytaj plik
  • Napisz lub edytuj plik

Trzecia część jest dla świata, czyli każdego użytkownika. To mówi 'r-'. Oznacza to, że użytkownik może tylko:

  • Przeczytaj plik

Uprawnienia plików w systemie Linux

Zmiana praw dostępu do plików/katalogów w Linuksie za pomocą polecenia „chmod”

Załóżmy, że nie chcesz, aby współpracownik widział Twoje osobiste zdjęcia. Można to osiągnąć poprzez zmianę uprawnień do plików.

Możemy użyć 'chmod polecenie, które oznacza 'zmiana trybu'. Za pomocą polecenia możemy ustawić uprawnienia (odczyt, zapis, wykonanie) do pliku/katalogu dla właściciela, grupy i świata.

Składnia:

chmod permissions filename

Istnieją 2 sposoby użycia komenda -

  1. Tryb absolutny
  2. Tryb symboliczny

Tryb bezwzględny (numeryczny) w systemie Linux

W tym trybie plik uprawnienia nie są reprezentowane jako znaki, ale trzycyfrowa liczba ósemkowa.

Poniższa tabela przedstawia numery dla wszystkich typów uprawnień.

Numer Rodzaj uprawnień symbol
0 Brak pozwolenia -
1 Wykonać –X
2 Pisać -w-
3 Wykonaj + Napisz -wx
4 Czytaj r-
5 Przeczytaj + Wykonaj rx
6 Czytaj + Napisz rw-
7 Odczyt + zapis + wykonanie Rwx

Zobaczmy, jak działa polecenie chmod permissions.

Tryb bezwzględny (numeryczny) w systemie Linux

W powyższym oknie terminala zmieniliśmy uprawnienia pliku 'sample na '764'.

Tryb bezwzględny (numeryczny) w systemie Linux

Kod absolutny „764” mówi następująco:

  • Właściciel może czytać, pisać i wykonywać
  • Grupa użytkowników może czytać i pisać
  • Świat może tylko czytać

Jest to pokazane jako '-rwxrw-r-

W ten sposób możesz zmienić uprawnienia użytkownika w systemie Linux w pliku, przypisując liczbę bezwzględną.

Tryb symboliczny w systemie Linux

W trybie Absolute zmieniasz uprawnienia dla wszystkich 3 właścicieli. W trybie symbolicznym możesz modyfikować uprawnienia konkretnego właściciela. Wykorzystuje symbole matematyczne do modyfikowania uprawnień do plików Unix.

OperaTor Opis

+

Dodaje uprawnienia do pliku lub katalogu

-

Usuwa pozwolenie

=

Ustawia uprawnienia i zastępuje uprawnienia ustawione wcześniej.

Różni właściciele są reprezentowani jako -

Oznaczenia użytkownika

u

użytkownik / właściciel

g

grupa

o

inny

a

cała kolekcja

Nie będziemy używać uprawnień w liczbach takich jak 755, ale w znakach takich jak rwx. Przyjrzyjmy się przykładowi

Tryb symboliczny w systemie Linux

Zmiana własności i grupy w systemie Linux

Aby zmienić właściciela pliku/katalogu, możesz użyć następującego polecenia:

chown user filename

Jeśli chcesz zmienić użytkownika i grupę pliku lub katalogu, użyj polecenia

chown user:group filename

Zobaczmy to w akcji

Zmiana własności i grupy w systemie Linux

Jeśli chcesz zmienić tylko właściciela grupy, użyj polecenia

chgrp group_name filename

"chgrp' oznacza grupę zmian.

Zmiana własności i grupy w systemie Linux

Wskazówka

  • Plik /etc/group zawiera wszystkie grupy zdefiniowane w systemie
  • Możesz użyć polecenia „groups”, aby znaleźć wszystkie grupy, których jesteś członkiem
  • Zmiana własności i grupy w systemie Linux

  • Możesz użyć polecenia newgrp, aby pracować jako członek grupy innej niż grupa domyślna
  • Zmiana własności i grupy w systemie Linux

  • Nie można mieć 2 grup posiadających ten sam plik.
  • W systemie Linux nie masz zagnieżdżonych grup. Jedna grupa nie może być podgrupą innej
  • x- Wykonanie katalogu oznacza możliwość „wejścia” do katalogu i uzyskania możliwego dostępu do podkatalogów
  • Istnieją inne uprawnienia, które możesz ustawić dla plików i katalogów, które zostaną omówione w późniejszym zaawansowanym samouczku

Podsumowanie:

  • Linux, będący systemem dla wielu użytkowników, ze względów bezpieczeństwa korzysta z uprawnień i własności.
  • W systemie Linux istnieją trzy typy użytkowników: Użytkownik, Grupa i Inny
  • Linux dzieli uprawnienia do plików na odczyt, zapis i wykonanie, oznaczone r, w i x
  • Uprawnienia do pliku można zmienić za pomocą polecenia „chmod”, które można dalej podzielić na tryb bezwzględny i symboliczny
  • Polecenie 'chown' może zmienić właściciela pliku/katalogu. Użyj następujących poleceń: chown user file lub chown user:group file
  • Komenda „chgrp” może zmienić własność grupy nazwa pliku grupy chrgrp
  • Co oznacza x – wykonanie katalogu? O: Możliwość „wejścia” do katalogu i uzyskania możliwego dostępu do podkatalogów.