Was ist der Unterschied zwischen einem normalen Benutzer und einem Systembenutzer?


124

In einigen von mir durchgeführten Dokumentationen ist ein boolescher Schalter aktiviert, der angibt, ob ein Benutzer ein "System" -Benutzer oder ein "normaler" Benutzer ist (standardmäßig "normal").

Was ist der Unterschied zwischen diesen beiden Nutzungsmodi? Ich muss nicht lernen, was ein Benutzer ist oder warum Sie ihn brauchen (auch nicht "gefälschte"), aber diese Unterscheidung ist für mich nicht intuitiv.

Antworten:


85

Das ist kein technischer Unterschied, sondern eine organisatorische Entscheidung. ZB ist es sinnvoll, normale Benutzer in einem Anmeldedialog anzuzeigen (damit Sie darauf klicken können, anstatt den Benutzernamen eingeben zu müssen), aber es werden dort keine Systemkonten (die UIDs, unter denen Daemons und andere automatische Prozesse ausgeführt werden) angezeigt .

Somit ist für die beiden Gruppen eine Grenze bzw. zwei Bereiche für die UIDs definiert. In openSUSE /etc/login.defsenthält die Datei folgende Zeilen:

# Min / Max-Werte für die automatische UID-Auswahl in useradd
#
# SYS_UID_MIN bis einschließlich SYS_UID_MAX ist der Bereich für
# UIDs für dynamisch zugewiesene Administrations- und Systemkonten.
# UID_MIN bis einschließlich UID_MAX ist der Bereich der UIDs von dynamisch
# Zugewiesene Benutzerkonten.
#
UID_MIN 1000
UID_MAX 60000
# Systemkonten
SYS_UID_MIN 100
SYS_UID_MAX 499

und

# Min / Max-Werte für die automatische Gid-Auswahl in groupadd
#
# SYS_GID_MIN bis einschließlich SYS_GID_MAX ist der Bereich für
# GIDs für dynamisch zugewiesene Verwaltungs- und Systemgruppen.
# GID_MIN bis einschließlich GID_MAX ist der Bereich von GIDs von dynamisch
# zugewiesene Gruppen.
#
GID_MIN 1000
GID_MAX 60000
# Systemkonten
SYS_GID_MIN 100
SYS_GID_MAX 499

3
Es ist erwähnenswert, dass Debian und andere Unternehmen Systemregeln haben, die den meisten verborgen sind (wie in PAM-Regeln, die die Auswahl der Systemauthentifizierung regeln), die basierend darauf unterscheiden, ob UIDs über 1000 oder weniger sind. Wählen Sie Ihre UIDs sorgfältig aus.
Dave

38

Der Hauptunterschied ist der Zweck des Kontos, daher ist dies in erster Linie eine nützliche Unterscheidung für Administratoren und Prüfer. Es gibt einige technische Unterschiede - gegenüber der adduserDokumentation:

System Benutzer ohne Altern Informationen erstellt werden /etc/shadow, und ihre numerische Kennungen werden gewählt in der SYS_UID_MIN- SYS_UID_MAXBereich, definiert in /etc/login.defsanstelle von UID_MIN- UID_MAX(und ihre Gegenstücke GID für die Erstellung von Gruppen).

Soweit ich das beurteilen kann (ich kenne Puppet nicht), besteht der Unterschied aus der Perspektive von Puppet darin, ob die -rOption an weitergegeben wird adduser.

Weitere Informationen finden Sie unter Ist es möglich, ein Konto in / etc / passwd zu "verstecken"?


Unter CentOS: Erstellt zwar kein Ausgangsverzeichnisuseradd --system foouser für diesen Benutzer, wie in der Manpage von useradd(8)(dort steht: " useradd" erstellt kein Ausgangsverzeichnis für einen solchen Benutzer, unabhängig von der Standardeinstellung in /etc/login.defs (CREATE_HOME). . Sie haben die -m - Optionen angeben , wenn Sie erstellt ein Home - Verzeichnis für ein System - Konto werden soll. ), das Home - Verzeichnis des neuen Benutzers foouserwird als nicht existent gegeben /home/foouserin /etc/passwd.
David Tonhofer

Außerdem wird die UID durch Abwärtszählen von SYS_UID_MAXim Allgemeinen 1000 ausgewählt, sodass wir zum Beispiel für die UID 998 haben foouser.
David Tonhofer
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.