Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


31.12.2020

Cykl webinarów

weinnovators.club
30.12.2020

Integracja z Teams

Veeam Backup
30.12.2020

Namierzanie zagrożeń

Flowmon Networks i Fortinet
30.12.2020

Wsparcie dla przedsiębiorstw

VMware Cloud on AWS
29.12.2020

Nowe NAS-y Thunderbolt 3

QNAP QuTS TVS-h1288X i TVS-h1688X
29.12.2020

Modele kompaktowe

VPL-PHZ60 i VPL-PHZ50
28.12.2020

Dedykowane przemysłowi

Seria TJ
28.12.2020

Nowa generacja

Router QHora-301W

Listy kontroli dostępu w Linuksie

Data publikacji: 15-06-2020 Autor: Konrad Kubecki

Access Control Lists to nieczęsto stosowany, choć przydatny mechanizm zaawansowanego zarządzania uprawnieniami do plików. Przydaje się wtedy, gdy podstawowy system uprawnień, bazujący na właścicielu, grupie i pozostałych użytkownikach, przestaje być wystarczający.

 

W jakich sytuacjach stosować rozszerzone listy uprawnień? Powodów, dla których mechanizm ACL staje się przydatny, jest wiele. Podstawowy system uprawnień w Linuksie definiuje właściciela pliku, grupę oraz pozostałych użytkowników. Dla każdego z nich istnieją trzy typy uprawnień: odczyt, zapis, wykonywanie, które są kolejno reprezentowane przez trzy litery: r (read), w (write), x (execute). Ich podgląd możliwy jest poprzez zastosowanie polecenia ls -la /katalog. Poniższy przykład prezentuje uprawnienia dla dwóch plików oraz jednego katalogu (oznaczony literą d z przodu):

 

 

Trzy pierwsze symbole uprawnień odnoszą się do właściciela, trzy kolejne do grupy, a trzy ostatnie do pozostałych użytkowników. Na przykładzie pliku rsyslog.docx widzimy, że właściciel posiada uprawnienia do odczytu i zapisu (rw-). Grupa edytorzy ma uprawnienia tylko do odczytu pliku (r--), podobnie jak pozostali użytkownicy (r--). Uprawnienie x oznacza możliwość uruchomienia skryptu lub programu. Tego typu wartość przypisana do katalogu oznacza uprawnienie do wyświetlenia jego zawartości.


Powyższy system uprawnień sprawdza się dobrze w przypadku, gdy serwer nie służy do współdzielenia danych pomiędzy większym gronem osób. Jeśli natomiast będziemy chcieli nadać jednej grupie uprawnienia do odczytu plików, a drugiej grupie możliwość modyfikacji, to bez rozszerzonych uprawnień nie uda się tego zrealizować. W powyższym systemie nie ma bowiem miejsca na drugą lub trzecią grupę, podobnie jak nie ma możliwości definiowania drugiego i kolejnych użytkowników z indywidualnie przypisanymi uprawnieniami. Tu z pomocą przychodzi mechanizm ACL.

 

> WYMAGANIA


ACL nie jest ściśle związany z żadną dystrybucją systemu Linux. Można go używać w systemach RedHat, CentOS, Fedora, Debian, Ubuntu, Mint i wielu innych. Zrozumienie istoty działania ACL oraz zdobycie nawet podstawowej wiedzy o poleceniach służących do konfiguracji list w jednej dystrybucji powoduje, że można tę wiedzę natychmiast stosować także w innych dystrybucjach.

 

Rozszerzone uprawnienia można stosować wobec plików i katalogów ulokowanych na partycjach formatowanych najpopularniejszymi systemami plików: ext2, ext3, ext4 oraz xfs. W przypadku ostatniego z wymienionych pewnym udogodnieniem jest fakt, że większość najnowszych dystrybucji Linuksa pozwala korzystać z tego systemu plików oraz ACL od razu po instalacji systemu operacyjnego, bez konieczności dodatkowej konfiguracji (xfs powszechnie używany jest w najnowszych dystrybucjach). Wydanie polecenia tune2fs i modyfikacja parametrów montowania nie są potrzebne. Jeżeli do systemu dodajemy nową partycję, to wystarczy zamontować ją poleceniem mount -a, po wcześniejszej konfiguracji programem fdisk lub parted oraz dodaniu do /etc/fstab zapisu podobnego do:

 


Z kolei systemy plików ext2, ext3, ext4, stosowane w starszych dystrybucjach, na przykład CentOS 5 lub 6, będą wymagały wykonania kilku dodatkowych czynności, po których korzystanie z ACL stanie się możliwe. Bez nich próba dodania rozszerzonych uprawnień zakończy się komunikatem o braku obsługi tego mechanizmu. Dzieje się tak, gdyż nowa partycja ext4 nie wspiera list rozszerzonych uprawnień. Można to potwierdzić poleceniem: tune2fs -l /dev/vgt/lvt | grep 'Default', które zwróci wynik none dla linii Default mount options. Konfiguracja ACL możliwa jest poprzez komendę tune2fs -o acl /dev/vgt/lvt oraz przemontowanie dysku. Podobny efekt można osiągnąć poprzez modyfikację wpisu dla wybranej partycji w pliku /etc/fstab. W tym przypadku wymagane jest dodanie w kolumnie opcji skrótu acl zgodnie z przykładem:

 


Po ponownym zamontowaniu dysku obecność opcji ACL można sprawdzić poleceniem mount | grep vgt, które powinno zwrócić wynik:
 

 

[...]

 

Specjalista ds. utrzymania infrastruktury i operacji. Zajmuje się problematyką budowy i utrzymania centrów przetwarzania danych oraz zarządzania nimi i koordynowaniem zmian dotyczących krytycznej infrastruktury IT.

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"