Dlaczego domyślne uprawnienia dla / media / user root: root?

20

Poprawiłem uprawnienia /media/usernameod root:rootdo do username:root[1]. Rozumiem, że lokalizacja zorientowana na użytkownika pozwala na zorientowanie na użytkownika [2].

Ale dlaczego w ogóle uprawnienia do tego folderu root:root?


[1] Aby móc montować tam zaszyfrowane foldery za pomocą Gnome EncFS Manager. Na przykład mogę teraz zamontować zaszyfrowany folder jako /media/username/personal-documents.

[2] Od Dlaczego Ubuntu przesunął domyślne punkty montowania? :

Przyczyna tej zmiany domyślnego zachowania w udisks2 wydaje się oczywista: bezpieczeństwo. Bezpieczniej jest ograniczyć dostęp do systemu plików do jednego konkretnego użytkownika, zamiast dawać dostęp do niego wszystkim użytkownikom systemu.

david.libremone
źródło
Montowanie zwykle wymaga dostępu do konta root. Możesz (tak jak zrobiłeś) dostosować uprawnienia. Jednak w żadnym wypadku nie może to stać się „domyślnym” zachowaniem w systemie Linux. Wyobraź sobie, co się stanie, jeśli jakikolwiek użytkownik (nie administrator) będzie mógł montować tak jak ty. To będzie całkowity chaos. :)
rbaleksandar

Odpowiedzi:

20

W moim przypadku wygląda to tak /media:

$ ls -l /media | grep $USER
drwxr-x---+  3 root root 4096 Jan 22 15:59 oli

Zasadniczo oznacza to, że tylko użytkownik root może wchodzić w interakcje z katalogiem. Jest to świetne ze względu na bezpieczeństwo (z pewnością zatrzymuje innych użytkowników, nie mówiąc już o kradzieży / usuwaniu / zmianie danych), ale nie na tym kończy się historia.

Możesz zauważyć znak plus na końcu maski uprawnień. Oznacza to, że używana jest lista kontroli dostępu (ACL). Pozwala to na znacznie bardziej szczegółowe uprawnienia.

$ getfacl /media/$USER
getfacl: Removing leading '/' from absolute path names
# file: media/oli
# owner: root
# group: root
user::rwx
user:oli:r-x
group::---
mask::r-x
other::---

To przez ACL, gdzie mój użytkownik może przeglądać zawartość /media/oli. Nadal nie mogę edytować zawartości.

Montowanie w nowoczesnych komputerach stacjonarnych (zarówno Gnome, jak i KDE) polega na udisks2:

root      2882  0.3  0.0 195956  4048 ?        Sl   Jan16  30:35 /usr/lib/udisks/udisks-daemon
root      2887  0.0  0.0  47844   784 ?        S    Jan16   0:00 udisks-daemon: not polling any devices
root      3386  0.0  0.0 429148  6980 ?        Sl   Jan16   7:35 /usr/lib/udisks2/udisksd --no-debug

Jak widać, działa tam jako root, więc kiedy coś uzyskuje dostęp do niego przez DBUS, może tworzyć punkty montowania w katalogu / home / $ USER i udostępniać je użytkownikowi, aby mogli edytować zawartość.

Nic z tego nie zmienia tego, co powiedziałem pierwotnie. Po prostu wyjaśniam, jak to działa w praktyce. W ten sposób coś na twoim pulpicie może pisać gdzieś, co jest dozwolone tylko przez root, i w jaki sposób twój użytkownik może to czytać, pomimo skądinąd ograniczającej własności.

Wszystko to sprawia, że ​​jest to środowisko bezpieczne dla danych użytkownika, ale takie, które utrudnia użytkownikowi wtrącanie się w materiał wierzchowca. Nie mogą na przykład usunąć punktu instalacji ani zmienić jego nazwy, co może powodować problemy, chyba że ma dostęp do konta root.

Edycja : Coś, co właśnie przyszło mi do głowy, to to, że daje administratorowi dobre miejsce do montowania rzeczy dla pojedynczego użytkownika. Uprawnienia domyślnie pomagają zachować prywatność tego montażu i chronić go przed wtrącaniem się użytkownika. To wydaje się dość rozsądnym domyślnym ustawieniem dla czegoś, co zrobione bez /media/$user/katalogu wymagałoby uprawnień roota.

Oli
źródło
2

Zgadzam się z inną odpowiedzią i komentarzami oprócz tego

root:rootaby uniknąć głównie dwóch sytuacji.
1. Zagrożenie bezpieczeństwa: skrypt hakera, który zrzuca / dev / zero do / media / user /, który wypełnia partycję root, a zatem nie może się zalogować lub zła wydajność.
2. Konflikt z udisk2: Załóż partycję z kopią zapasową etykiety . Udisk montuje go @ / media / user / backup. użytkownik ręcznie utworzył powyższy katalog, który zmusi udisk do zmiany punktu montowania na coś takiego jak / media / user / backup1 i tym samym wprowadzony w błąd przez skrypty kopii zapasowej itp.

Prinz
źródło
2

Mentalność Linuksa (i * nix) ogólnie oparta jest na zasadzie Least amount of necessary privileges.

Zazwyczaj nowoczesne Desktop Environmentsmontuje urządzenia pod /media/username/devicepartitionname. Oznacza to, że aby urządzenie było użyteczne, wystarczy posiadać devicepartitionnamefolder i wszystko pod nim. Oznacza to, że Twój folder /media/usernamenadal może być własnością root, co zwiększy jego bezpieczeństwo.

Również montowanie czegokolwiek /media/usernamejest złym pomysłem, ponieważ sprawi, że DEspróbujesz zamontować partycję w folderze na innej zamontowanej partycji, co może prowadzić do wielu zabaw! (prawdopodobna utrata danych).

Wolfer
źródło
dziękuję za prostą, ale nie prostą odpowiedź ... Wyjaśniłem powyżej, że GnomeEncFS się powiększa, aby /media/username/someplacenie /media/username... konkretnie mówisz, że powinien być własnością root, czy root:usernamebyłoby lepiej niż username:rootw moim przypadku? czy oba wprowadzają ten sam problem w zakresie bezpieczeństwa? (zobacz to pytanie, dlaczego muszę to zrobić mimo to askubuntu.com/questions/392063/… )
david.libremone
@ d3vid: Zależy, w drugim przypadku, jeśli nie zmieniłeś domyślnego uprawnienia, normalny użytkownik nie byłby w stanie pisać /media/user(ponieważ jest to 750), co jest nieco lepsze niż w pierwszym przypadku. Jeśli chodzi o montowanie: historycznie /mnti jego podfoldery są uważane za domyślny punkt montowania dla wszystkiego, /mediadodano go tylko po to, aby ludzie, którzy chcą po prostu korzystać z Linux-a, nie rozumiejąc, jak wszystko działa, nie zostaną pomyleni przez wszystkie dziwne foldery i tak dalej /.
Wolfer
@ d3vid: Jeśli chodzi o bezpieczeństwo: ponieważ foldery, do których masz dostęp do zapisu i do wykonywania, mogą być używane przez hakera / crackera / cokolwiek chcesz do niego zadzwonić w celu przesłania plików binarnych, które mogą następnie wykorzystać do uzyskania rootdostępu do twoje pudełko. (Nazywa się to eskalacją uprawnień.) Chociaż nie powinieneś celowo zwiększać bezpieczeństwa swojego systemu, istnieją miejsca domyślne, które pozwalają na to samo (i są bardziej niejasne i jako takie zmniejszają prawdopodobieństwo znalezienia aktywności hakerów). Dlatego „problem bezpieczeństwa” w tym przypadku można zignorować w zależności od konfiguracji.
Wolfer
1
@Wolfer - przywróciłem wersję Twojej odpowiedzi, która nie zawierała języka uznanego za obraźliwy. Spróbujmy zachować jak najczystsze pytania i odpowiedzi i nie narażaj się na obrażenia. Dzięki.
fossfreedom