Ubuntu: domyślny tryb dostępu (uprawnienia) dla katalogu domowego użytkowników (/ home / user)

15

Jaki jest domyślny tryb dostępu (np. 0755) dla katalogów domowych użytkowników w Ubuntu (np. Co jest wyjściem ls -ld /home/*)? W innych głównych dystrybucjach Linuksa (Debian, RedHat, Gentoo, Arch)?

Jak mogę zmienić to ustawienie domyślne?

PS: Przepraszam, ale nie mogę teraz znaleźć Ubuntu i sam go przetestować.

osgx
źródło
Nie pytam o umask, ale o skelihome-dirs
osgx
Nie dodawaj nowych informacji w komentarzach, ale
dołącz
to nie jest nowa informacja, to komentarze na temat złego zrozumienia mojego pytania
osgx,

Odpowiedzi:

15

Podczas tworzenia użytkownika za pomocą useradd --create-home username, katalog szkieletowy (zwykle /etc/skel) jest kopiowany, wraz z jego uprawnieniami.

Katalog domowy ( /home/username) podlega UMASKustawieniu w /etc/login.defs. 022Domyślnie jest to ustawione , więc uprawnienia dla /home/usernamestają się 755.

Odpowiedni fragment strony podręcznika Ubuntuuseradd :

Następujące zmienne konfiguracyjne w /etc/login.defs zmieniają zachowanie tego narzędzia:
[..]
UMASK (liczba)

Maska tworzenia trybu pliku jest inicjowana na tę wartość. Jeśli nie zostanie określony, maska ​​zostanie zainicjowana na 022.

useradd i newusers używają tej maski do ustawiania trybu tworzonego katalogu domowego

Lekensteyn
źródło
Co z redhat / debian?
osgx
AFAIK to standardowa rzecz useradd, jeśli byłaby specyficzna dla Ubuntu, powinna była zostać wspomniana na stronie podręcznika. Strona podręcznika redhat: linux.die.net/man/8/useradd
Lekensteyn
10

Domyślne pozwolenie użytkownika domu może być kontrolowane w następujących miejscach.

  • Opcja katalogu szkieletu ( -k, --skel SKEL_DIR) z useradd.
  • SKELwartość, /etc/adduser.confktóra określa domyślny katalog szkieletowy.
  • DIR_MODEwartość, /etc/adduser.confktóra określa domyślne uprawnienia.

Katalog domowy nowych użytkowników jest tworzony za /etc/skelpomocą szablonu (zachowanie domyślne).
Domyślne zezwolenie /etc/skelto 0755 (drwxr-xr-x).
Użycie niestandardowego katalogu szkieletowego z prawidłowymi uprawnieniami pozwoli nowym katalogom domowym uzyskać pożądane uprawnienia.

Domyślne wartości dla addusersą zdefiniowane w /etc/adduser.conf.
Domyślna wartość DIR_MODEin /etc/adduser.confto 0755.
Zmiana DIR_MODEpoprawnych uprawnień ( DIR_MODE=0750lub podobnych) pozwoli nowym katalogom domowym mieć pożądane uprawnienia.
Według dokumentacji Ubuntu jest to najlepsza opcja.

Istniejące katalogi domowe użytkowników będą musiały zostać ręcznie zmienione.

sudo chmod 0750 /home/username

Dlatego dobrym pomysłem jest zmiana /etc/adduser.confzaraz po instalacji, aby uniknąć uzyskiwania przez nowych użytkowników 0755 (drwxr-xr-x)uprawnień do typu.
Nadal pierwszy użytkownik utworzony podczas instalacji 0755ustawi swój katalog osobisty, który należy zmienić ręcznie.

UMASKin /etc/login.defsto ogólne ustawienie dla plików / katalogów / etc tworzonych przez użytkowników (nie tylko w ich katalogach domowych). i może się zmieniać w zależności od USERGROUPS_ENABw /etc/login.defs.

Oficjalne wyjaśnienie: Zarządzanie użytkownikami - Bezpieczeństwo profilu użytkownika
Sprawdź także inne sekcje Zarządzania użytkownikami.

Powiązane: /ubuntu/46501/why-can-other-users-see-the-files-in-my-home-folder

Sithsu
źródło
3
Odpowiedzi tylko dla linków są „nie-nie” z powodu możliwej zgnilizny linków w przyszłości. Podaj w swoich odpowiedziach istotne informacje.
ᴇcʜιᴇ007
@ techie007 Wiem. Użyłbym komentarza, gdybym miał wystarczającą liczbę powtórzeń.
Sithsu,
1
@ techie007 Dodano więcej treści do odpowiedzi
Sithsu,
Ustawienie DIR_MODEw /etc/adduser.confto na pewno właściwa droga.
user1338062,
2

Uwaga: Nie zmieniaj wartości UMASK w /etc/login.defs, jeśli chcesz zmienić tylko uprawnienia do katalogu domowego. Bo zmiana UMASK wpłynie na wszystko.

Kiedyś postępowałem tak samo, a kiedy instalowałem paczki z systemem za pomocą pip, nie było to dostępne dla innych użytkowników i ciągle odmawiałem zgody. Ponieważ domyślny UMASK wpłynął na uprawnienia wszystkich katalogów pakietów utworzonych po zastosowaniu zmian.

Poprawnym sposobem jest zmodyfikowanie DIR_MODE w /etc/adduser.conf . Ponieważ plik /etc/adduser.conf jest używany w większości dystrybucji Linuksa, to rozwiązanie działa dla większości.

Abhishek Meena
źródło
1

Domyślne uprawnienia dla / home w Ubuntu to rwxr-xr-x lub 755. W przypadku / home / user jest to również rwxr-xr-x lub 755. Przynajmniej jest to moja instalacja.

Aby zmienić uprawnienia do plików katalogu domowego, otwórz terminal i uruchom coś takiego:

chmod 700 /home/user

Pamiętaj, aby zmienić 700 na wartość chmod, którą faktycznie chcesz ustawić.

Jeśli nie jesteś właścicielem katalogu, potrzebujesz uprawnień roota, aby zmienić uprawnienia. Ubuntu używa sudodo tego:

sudo chmod 700 /home/user

Po uruchomieniu tego polecenia pojawi się pytanie o hasło administratora.

Rincewind42
źródło
2
Druga część jest niepoprawna, katalog domowy jest twoją własnością, więc nie potrzebujesz do tego odpowiedniego administratora.
Lekensteyn
Zakładasz, że chce tylko zmienić prawa we własnym domu, reż. Powiedziałem „Jeśli nie jesteś właścicielem katalogu”. Mój kod będzie działał na katalogu domowym dowolnego użytkownika.
Rincewind42
Zredagowałem twój post, aby był bardziej poprawny (mam nadzieję, że ci się podoba), twój oryginalny post w ogóle tego nie zawierał: superuser.com/revisions/303995/1
Lekensteyn 30.06.11
0

Sprawdź stronę podręcznika umask .

Domyślne ustawienie umask to

0022

Umożliwia groupi othersodczytuje i wykonuje dostęp.

nik
źródło
Nie, moje pytanie nie dotyczy umask, ale domyślnych uprawnień do samego folderu użytkownika (zaraz po autworzeniu użytkownika , co będzie wynikiem ls -ld /home/a)
osgx