Co grupy robią w „Użytkownicy i grupy”?

13

Wiem, że niektórzy definiują uprawnienia do systemu plików (takie jak www-data). Ale nie rozumiem, dlaczego odpowiedź na to pytanie zakończyła się powodzeniem , dodając użytkownika do grupy „Wideo”.

Pytanie brzmi: co robią wszystkie wstępnie zbudowane grupy w Ubuntu? Co bardziej rozsądne, skoro jest ich tak wiele, jakie „specjalne” grupy istnieją i jak i kiedy należy z nich korzystać?

wprowadź opis zdjęcia tutaj

Scaine
źródło

Odpowiedzi:

8

Niektóre grupy umożliwiają dostęp do plików lub katalogów, na przykład: www-dataumożliwiają dostęp do plików internetowych lub admgrupy do odczytu plików /var/log. To jest trywialne zastosowanie.

Ale niektóre grupy umożliwiają dostęp do niektórych urządzeń. Na przykład dialoutgrupa umożliwia dostęp do portów szeregowych za pośrednictwem plików w /dev:

$ find /dev -group dialout -exec ls -ld {} \;
crw-rw---- 1 root dialout 4, 64 Jan 19 12:51 /dev/ttyS0
crw-rw---- 1 root dialout 4, 67 Jan 19 12:51 /dev/ttyS3
crw-rw---- 1 root dialout 4, 66 Jan 19 12:51 /dev/ttyS2
crw-rw---- 1 root dialout 4, 65 Jan 19 12:51 /dev/ttyS1

Więc jeśli jesteś członkiem dialoutgrupy można korzystać z portów szeregowych przez czytanie i pisanie do pliku urządzenia: echo "Hello world" > /dev/ttyS0. videoGrupa umożliwia dostęp do sprzętu wideo.

Aby zapoznać się z opisem każdej grupy, przeczytaj plik: /usr/share/doc/base-passwd/users-and-groups.html

EDYCJA dotycząca pierwszego komentarza:

W rzeczywistości zazwyczaj nie trzeba być w tych grupach, aby „uzyskać dostęp” do zasobów sprzętowych z punktu widzenia użytkownika. Powszechną praktyką jest zarządzanie demonem / serwerem, który należy do najbardziej restrykcyjnej grupy, a następnie umożliwia dostęp do demona / serwera.

W twoim przypadku bycie członkiem videogrupy pozwala na bezpośredni dostęp do sprzętu graficznego, a nie przez serwer X. Zwykle na komputerze stacjonarnym / laptopie miło jest mieć bezpośredni dostęp do sprzętu graficznego ( glxinfo | grep "direct rendering").

Na marginesie, jeśli masz bezpośrednie renderowanie, ale nie jesteś członkiem videogrupy ( id | grep --color video), dostęp do sprzętu uzyskał acl /devpliku ( find /dev/ -group video -exec getfacl {} \; | grep $USERNAME).

shellholic
źródło
Świetna odpowiedź, dzięki. Ale po prostu kontynuuj - nie jestem członkiem żadnej grupy w moim systemie, ale nadal mogę korzystać z całego sprzętu (np. Wideo). Jestem zdezorientowany, dlaczego istnieją, jeśli nadal mogę bez nich pracować.
Scaine
Musisz sudo apt-get install acluruchomić to drugie polecenie (getfacl). Dziękuję za wyjaśnienie.
Scaine,
2

Ogólnie pojęcie podziału grupowego odnosi się do tego:

http://en.wikipedia.org/wiki/Principle_of_least_privilege

Głupotą wydaje się mieć wszystkie te grupy, dopóki nie uświadomisz sobie, że alternatywą byłby jeden wspólny poziom wysokiego przywileju (np. Sudo / root), który byłby koszmarem bezpieczeństwa.

Większość grup pokazanych w twoim poście istnieje, aby różne elementy systemu operacyjnego mogły uzyskać dostęp do wspólnej funkcjonalności przy najmniejszej liczbie uprawnień. Użytkownik nie powinien się tym zbytnio przejmować. Podczas niektórych zadań administracyjnych może być konieczne zwiększenie uprawnień, aby uzyskać dostęp do niektórych funkcji, i zwykle odbywa się to za pomocą sudo w przypadku krótkich zadań jednorazowych i poprzez dodanie się do określonej grupy w celu wykonania powtarzalnych zadań.

użytkownik10804
źródło