Setuid i Setgid to terminy uniksowe, skróty odpowiednio dla „Ustaw identyfikator użytkownika” i „Ustaw identyfikator grupy”. Setuid, czasami nazywany również "suid" i "setgid" to uprawnienia dostępu, które można przypisać do plików lub katalogów w systemie operacyjnym opartym na Uniksie. Służą one przede wszystkim do umożliwienia użytkownikom systemu tymczasowego uruchamiania uprzywilejowanych plików binarnych z podwyższonym poziomem uprawnień w celu wykonania określonego zadania.
Te uprawnienia są następujące:
USTAW UID
ustaw-identyfikator-użytkownika-przy wykonaniuPozwala na to, że gdy plik jest wykonywany, odbywa się to na prawach właściciela. Na przykład, jeśli potrzebujemy skorzystać z uprawnień administratora, aby móc uzyskać dostęp do określonego modułu, zapisywać logi, odczytywać/zapisywać urządzenia itp.
SGID, set-group-ID-on-execution, pozwala, aby podczas wykonywania pliku odbywało się to z uprawnieniami grupy będącej właścicielem pliku.
Wprowadzenie SET UID i GID do plików i katalogów, generalnie do tych ostatnich, pozwoli na „dziedziczenie” cech z poprzedniego katalogu do następnego oraz wszystkich plików/katalogów, które są generowane/tworzone/kopiowane w katalogach SET GID będzie miał cechy z katalogu nadrzędnego.
GID jest generalnie dozwolony, aby użytkownicy grupy mogli pracować z plikami tej samej grupy, UID będzie mógł zmienić właściciela pliku i uprawnienia dla innej osoby w GRUPIE, jeśli opcja „klikalny” jest aktywna .
USTAW GID
SET GID to interesująca opcja, jeśli wielu użytkowników ma mieć dostęp do wspólnego systemu pamięci masowej
- SAMBA
- FTP
- HTTP
- Bazy danych
Przykład implementacji SET UID i GID
Z terminala realizujemy następujące zadania:
Tworzymy przykładowy katalog:
[root @ root] mkdir PRZYKŁADPodajemy katalog:
[root @ root] vdirZmieniamy uprawnienia do katalogu tak, aby dostęp mieli tylko użytkownicy z grupy „programiści”, uprawnienia są parametrami polecenie chmod i są następni
+ s: aby aktywować tryb suid
g + s: aby aktywować tryb sgid
[root @ root] # chown user.programmers
[root @ root] # chmod g + s PRZYKŁAD
[root @ root] # vdirPodajemy katalog i zobaczymy zawartość
4 drwxrwxrwx 2 programistów użytkowników PRZYKŁADDomyślnie żaden użytkownik nie należący do grupy „programiści” nie będzie mógł pracować z plikami w tym katalogu. Z drugiej strony, użytkownicy grupy będą mogli pracować z plikami w zależności od ich atrybutów, które mają użytkownicy, jeśli mają uprawnienia tylko do odczytu lub zapisu.
Niektóre oprogramowanie i usługi, takie jak Samba, FTP, HTTPPosiadają szczególne cechy, które nie podlegają tym regułom i uzupełniają je poprzez ich wzbogacanie.
Teraz, gdy utworzyliśmy SET UID i GID, jeśli utworzymy plik lub katalog w przykładzie od dowolnego użytkownika, odziedziczy on cechy, które zdefiniowaliśmy wcześniej, niezależnie od tego, kto go utworzył i jakie ma uprawnienia.
Jako przykład możemy powiedzieć, że jeśli utworzymy plik report.txt w katalogu PRZYKŁAD i użytkownik, który go utworzył jest rootem, a mimo to grupą są programiści, to grupą, do której plik będzie należeć, będą programiści.
Ponieważ katalog EXAMPLE ma atrybuty: drwxrwsrwx, wskazujące, że katalogiem jest SET GID, wszystkie utworzone w nim pliki będą należeć do użytkownika i grupy wskazanej przez SET GID.
Jeśli zobaczymy listę z kilkoma plikami, wyglądałoby to tak:
4 drwxr-Sr-x 2 jose programistów 4096 home.html 4 drwxr-Sr-x 2 Carlos programistów 4096 dependencies.txt 4 drwxr-Sr-x 2 root programistów 4096 report-project.odfMam nadzieję, że ten poradnik ci pomoże. Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt