Jaka jest różnica między zwykłym użytkownikiem a użytkownikiem systemu?
124
Część dokumentacji , przez którą przechodzę, zawiera przełącznik logiczny określający, czy użytkownik jest użytkownikiem „systemowym”, czy „zwykłym” (domyślnie „normalnym”).
Jaka jest różnica między tymi dwoma trybami wysyłki użytkownika? Nie muszę się uczyć, kim jest użytkownik ani dlaczego go potrzebujesz (nawet „fałszywych”), ale to szczególne rozróżnienie nie jest dla mnie intuicyjne.
To nie jest różnica techniczna, ale decyzja organizacyjna. Np. Sensowne jest pokazanie normalnych użytkowników w oknie dialogowym logowania (aby można było ich kliknąć zamiast konieczności wpisywania nazwy użytkownika), ale nie pokazywałoby tam kont systemowych (identyfikatorów UID, pod którymi uruchamiają się demony i inne automatyczne procesy) .
W ten sposób zdefiniowano granicę, a raczej dwa zakresy dla identyfikatorów UID dla dwóch grup. W openSUSE plik /etc/login.defszawiera następujące linie:
# Wartości min / max dla automatycznego wyboru UID w useradd
#
# SYS_UID_MIN do SYS_UID_MAX włącznie to zakres
# UID dla dynamicznie przydzielanych kont administracyjnych i systemowych.
# UID_MIN do UID_MAX włącznie to zakres identyfikatorów UID dynamicznie
# przydzielone konta użytkowników.
#
UID_MIN 1000
UID_MAX 60000
# Konta systemowe
SYS_UID_MIN 100
SYS_UID_MAX 499
i
# Wartości min / max dla automatycznego wyboru gid w groupadd
#
# SYS_GID_MIN do SYS_GID_MAX włącznie to zakres
# GID dla dynamicznie przydzielanych grup administracyjnych i systemowych.
# GID_MIN do GID_MAX włącznie to zakres GID dynamicznie
# przydzielonych grup.
#
GID_MIN 1000
GID_MAX 60000
# Konta systemowe
SYS_GID_MIN 100
SYS_GID_MAX 499
Warto zauważyć, że Debian i inni będą mieli reguły systemowe ukryte dla większości (np. W regułach PAM regulujących wybory uwierzytelniania systemu), które rozróżniają na podstawie tego, czy UID są większe niż 1000, czy niższe. Ostrożnie wybieraj UID.
Dave
38
Główną różnicą jest cel konta, więc jest to przede wszystkim użyteczne wyróżnienie dla administratorów i audytorów. Istnieje kilka różnic technicznych - z adduserdokumentacji:
Użytkownicy systemu zostaną utworzeni bez informacji o przedawnieniu /etc/shadow, a ich identyfikatory numeryczne zostaną wybrane w zakresie SYS_UID_MIN- SYS_UID_MAXzdefiniowanym w /etc/login.defszamiast zamiast UID_MIN- UID_MAX(oraz ich odpowiedniki GID do tworzenia grup).
O ile mogę powiedzieć (nie znam Puppet), różnica z perspektywy Puppet polega na tym, czy spełnia on tę -ropcję adduser.
Na CentOS: Chociaż useradd --system foousernie tworzy katalogu domowego dla tego użytkownika zgodnie ze stroną podręcznika użytkownika useradd(8)(co mówi: Należy zauważyć, że useradd nie utworzy katalogu domowego dla takiego użytkownika, niezależnie od domyślnego ustawienia w /etc/login.defs (CREATE_HOME) . trzeba określić -m opcji jeśli chcesz katalog domowy dla systemu konto aby zostać utworzony. ), katalog domowy nowego użytkownika foouserjest podana jako nieistniejące /home/foouserw /etc/passwd.
David Tonhofer
Dodatkowo, UID jest wybierany poprzez odliczanie od SYS_UID_MAX, zwykle 1000, więc mamy UID 998 na przykład dla foouser.
Główną różnicą jest cel konta, więc jest to przede wszystkim użyteczne wyróżnienie dla administratorów i audytorów. Istnieje kilka różnic technicznych - z
adduser
dokumentacji:O ile mogę powiedzieć (nie znam Puppet), różnica z perspektywy Puppet polega na tym, czy spełnia on tę
-r
opcjęadduser
.Aby uzyskać szerszą perspektywę, zobacz Czy można „ukryć” konto przed / etc / passwd?
źródło
useradd --system foouser
nie tworzy katalogu domowego dla tego użytkownika zgodnie ze stroną podręcznika użytkownikauseradd(8)
(co mówi: Należy zauważyć, że useradd nie utworzy katalogu domowego dla takiego użytkownika, niezależnie od domyślnego ustawienia w /etc/login.defs (CREATE_HOME) . trzeba określić -m opcji jeśli chcesz katalog domowy dla systemu konto aby zostać utworzony. ), katalog domowy nowego użytkownikafoouser
jest podana jako nieistniejące/home/foouser
w/etc/passwd
.SYS_UID_MAX
, zwykle 1000, więc mamy UID 998 na przykład dlafoouser
.