Einführung in die Benutzerverwaltung unter Linux-Systemen

Einführung in die Benutzerverwaltung unter Linux-Systemen

1. Die Bedeutung von Nutzern und Nutzergruppen

1) Die Bedeutung der Benutzerexistenz

Die Systemressourcen sind begrenzt. Wie kann man Systemressourcen sinnvoll verteilen?

1. Konto

2. Autorisierung

3. Authentifizierung

Die oben genannten drei „A“ werden als 3A-Mechanismus bezeichnet und stellen die Sicherheitsarchitektur auf niedrigster Ebene im System dar.

2) Die Bedeutung von Benutzergruppen

Eine Benutzergruppe ist ein logischer Container, der Benutzer klassifiziert und einheitlich autorisiert.

Einfach ausgedrückt sind Benutzergruppen wie Klassen oder Gemeinschaftsorganisationen, als wir in der Schule waren. Welche Rechte Ihnen in Ihrer Klasse eingeräumt werden und welche Befugnisse Ihre Abteilung in der Gemeinschaft hat, das ist, was Sie haben. Dies erleichtert die einheitliche Dezentralisierung der Macht.

2. Wie Benutzer und Benutzergruppen im System existieren

Da Computer zahlensensibel sind und wir Menschen noch sensibler auf Namen reagieren, können wir diese Funktion nutzen, um Benutzer in Form von zugehörigen Zahlen und Zeichenfolgen im Computer zu speichern.

Wir wissen, dass alles in Linux eine Datei ist, Benutzer bilden da keine Ausnahme. Was wir Benutzer und Benutzergruppen nennen, ist eigentlich eine Zeichenfolge in der Datei.

Der Benutzer ist eine Zeichenfolge in der Datei /etc/passwd. Die Benutzergruppe ist eine Zeichenfolge in der Datei /etc/group. vim /etc/passwd Mit diesem Befehl können Sie den Inhalt der Datei passwd anzeigen und Benutzerinformationen abrufen. vim /etc/group Mit diesem Befehl können Sie den Inhalt der Gruppendatei anzeigen und Benutzergruppeninformationen abrufen.

Es ist jedoch etwas mühsam, die ID-Informationen von Benutzern oder Benutzergruppen in Dateien anzuzeigen. Linux stellt uns die folgenden Befehle zur Verfügung, um uns das Anzeigen der relevanten Benutzerinformationen zu erleichtern:

whoami Zeigt den aktuellen Benutzernamen an id [Parameter][Benutzername] Zeigt die ID-Informationen des Benutzers an. Der Standardbenutzername ist der aktuelle Benutzer -u Zeigt die Benutzer-ID des Benutzers an
    -g Zeigt die primäre Gruppen-ID des Benutzers an
    -G Alle Gruppen-IDs des Benutzers anzeigen
    -n zeigt den Namen an. Es kann nicht allein verwendet werden. Es muss in Verbindung mit dem obigen Befehl verwendet werden, um den Benutzer-ID-Bereich anzuzeigen:
    0: Superuser-ID
    1-999: Linux-System-ID
    1000-65535: Benutzerebenen-ID
            
            Die obigen ID-Informationen werden in /etc/login.defs aufgezeichnet

3. Systemkonfigurationsdateien im Zusammenhang mit Benutzern

/etc/passwd Datei mit Benutzeridentitätsinformationen

Die Bedeutung der Zeichenfolge in passwd: Benutzername: Benutzerkennwort: Benutzer-ID: Primäre Benutzergruppen-ID: Benutzerbeschreibung: Benutzer-Home-Verzeichnis: Standard-Shell des Benutzers

/etc/group Gruppenidentitätsinformationsdatei

Gruppenname: Gruppenpasswort: Gruppen-ID: Weitere Mitglieder der Gruppe

/etc/skel/.* Vorlagen für Benutzerumgebungskonfigurationsdateien

/etc/shadow-Datei mit Benutzerauthentifizierungsinformationen

/home/Benutzername Home-Verzeichnis des Benutzers

/var/spool/mail/username Benutzerpostfachdatei

4. Benutzerbezogene Vorgänge

1) Erstellen und Löschen von Benutzern und Benutzergruppen

Mit dem Befehl watch können wir die Erstellung und Löschung von Benutzern überwachen

watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo =======;ls -l /home"

Befehl zur Benutzererstellung useradd:

useradd Benutzername ##Benutzererstellung -u id Benutzername ##Benutzer-UID angeben
        -g id Benutzername ##Geben Sie die primäre Gruppen-ID an
        -G id Benutzername ##Zusätzliche Gruppen-ID angeben
        -d dir Benutzername ##Geben Sie das Home-Verzeichnis des Benutzers an -M Benutzername ##Erstellen Sie beim Erstellen eines Benutzers nicht automatisch ein Home-Verzeichnis -c Wort Benutzername ##Geben Sie beim Erstellen eines Benutzers Benutzeranweisungen an -s Shell Benutzername ##Geben Sie die Shell an
userdel Benutzername ##Benutzer löschen -r Benutzername ##Benutzer löschen und das Home-Verzeichnis und die Systemkonfigurationsdatei löschen groupadd Gruppenname ##Gruppe erstellen -g id Gruppenname ##Gruppen-ID angeben
groupdel groupname ##Gruppenlöschung

2) Informationsmanagement von Benutzern und Benutzergruppen

Manchmal müssen wir während der Nutzung des Servers die zugehörigen Attribute des Benutzers ändern. Obwohl wir wissen, dass der Benutzer in Form einer Zeichenfolge in der Datei /etc/passwd gespeichert ist und die Bedeutung der Zeichenfolge kennen:

Benutzername: Benutzerkennwort: Benutzer-ID: Primäre Benutzergruppen-ID: Benutzerbeschreibung: Benutzer-Home-Verzeichnis: Standard-Shell des Benutzers

Natürlich können wir den Root-Benutzer verwenden, um diese Felder zu ändern und die Benutzerinformationen zu ändern. In tatsächlichen Anwendungen werden wir dies jedoch nicht tun, sondern einige verwandte Befehle verwenden:

usermod [Optionen] [Parameter] [Benutzername]
 
[Optionen]
        -l #Benutzernamen ändern -u #Benutzer-UID ändern
        -g #Ändert die primäre Gruppen-ID des Benutzers
        -G #Zusätzliche Gruppenidentität des Benutzers ändern -aG #Zusätzliche Gruppenidentität des Benutzers hinzufügen -c #Benutzerbeschreibungstext ändern -d #Zeiger des Home-Verzeichnisses des Benutzers ändern -md #Zeiger und Namen des Home-Verzeichnisses gleichzeitig ändern -s #Standard-Shell ändern
        -L #Konto einfrieren -U #Konto entsperren

Unsere Passwortinformationen werden in der Shadow-Datei gespeichert, Shadow-Inhalt:

Benutzername: Verschlüsseltes Passwort: Letzte Änderungszeit: Mindeständerungsintervall: Gültigkeitsdauer des Passworts: Anzahl der Warntage vor der Passwortänderung: Karenzzeit nach Ablauf des Passworts: Ablaufzeit des Kontos: Reservierte Felder

Mit dem Befehl passwd können wir passwortbezogene Attributinformationen ändern

passwd [Optionen] [Parameter] [Benutzername]
Wenn Option und Parameter nicht festgelegt sind, ändern Sie das Passwort von „Benutzername“ [Option]
        -S #Passwortstatus prüfen -l #Kontoauthentifizierung einfrieren -u #Kontoauthentifizierung entsperren -d #Benutzerpasswort löschen -e #Standardnutzungsdauer auf 0 ändern
        -n #Mindestnutzungsdauer festlegen -x #Ablaufzeit des Passworts festlegen -w #Ablaufwarnzeit festlegen -l #Anzahl der inaktiven Tage festlegen change -d 0 [Benutzername] #Passwort muss zum Anmelden geändert werden change -E "xxxx-xx-xx" [Benutzername] #Einfrierdatum festlegen

5. Dezentralisierung der Benutzer

Wenn wir Server in der Praxis verwenden, verwenden wir häufig Dezentralisierung, wodurch wir einige Befehle mit höheren Berechtigungen ausführen können. Beispielsweise können wir Dezentralisierung verwenden, um normalen Benutzern zu ermöglichen, einige Befehle als Root auszuführen, sodass wir uns nicht beim Root-Konto anmelden müssen, während wir gleichzeitig die Sicherheit des Systems gewährleisten und unser Ziel erreichen.

Autorisierungsmethode:

Wir können den Befehl visudo verwenden, um die Datei /etc/sudoers zu ändern (natürlich können wir sie auch mit vi oder vim ändern, aber vi und vim bieten keine Syntaxerkennung, was es umständlich macht, Fehler zu finden, wenn wir die Datei falsch ändern).

Der Einfachheit halber fügen wir die Dezentralisierung normalerweise etwa in Zeile 100 der Datei hinzu:

Benutzername Hostname=(neuer Benutzername) [NOPASSWD:] /Befehl, /Befehl1

6. Dateiberechtigungen anzeigen und lesen

1) Berechtigungsprüfung

ls -l file # Dateiberechtigungen anzeigen ls -ld dir # Verzeichnisberechtigungen anzeigen

Dateiberechtigungsinformationen sind in drei Kategorien unterteilt:

u steht für user, also den Besitzer der Datei; g steht für group, also die Besitzergruppe der Datei; o steht für other, also andere Personen, die nichts mit dem Besitz der Datei zu tun haben; jeder Haupttyp hat ein Flagbit mit Autorität, nämlich rwx
r steht für read, also die Leseberechtigung, w steht für write, also die Schreibberechtigung, und x steht für die Ausführungsberechtigung

Mit dem Befehl chmod können wir dateibezogene Berechtigungsinformationen ändern

chmod [ugo][+-=][rwx] [Dateiname/Verzeichnisname] #Berechtigungen durch Ausdrücke erteilen chmod [xxx] [Dateiname/Verzeichnisname] #Berechtigungen durch Zahlen erteilen Durch das Verständnis boolescher Mengen können wir die drei Bits von rwx von Binär in Oktal umwandeln.
w-2
x-1

S-Berechtigungen

Sie können Zeichenfolgenausdrücke verwenden, um S-Berechtigungen festzulegen. Die Funktionen von S-Berechtigungen sind:

Wenn die Berechtigung s auf das u-Bit einer Datei gesetzt ist, bedeutet dies, dass der Datei-Executor bei der Ausführung die Besitzeridentität der Datei erhält. Dies kann nur bei Binärdateien verwendet werden. Wenn die Berechtigung s auf das g-Bit einer Datei gesetzt ist, bedeutet dies, dass der Datei-Executor die Gruppenidentität der Datei erhält. Wenn dies bei einem Verzeichnis verwendet wird, wird die Gruppe der im Verzeichnis erstellten Dateien zur Gruppe dieses Verzeichnisses. Die Wirkung des Sticky Bits ist nur bei Verzeichnissen wirksam und bewirkt, dass nur der Besitzer der Datei seine eigenen Dateien im aktuellen Verzeichnis löschen kann.

Dies ist das Ende dieses Artikels über die Benutzerverwaltung unter Linux-Systemen. Weitere relevante Inhalte zur Benutzerverwaltung unter Linux-Systemen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So kommunizieren Sie mit anderen Benutzern über die Linux-Befehlszeile
  • Zusammenfassung der Befehle zur Benutzerverwaltung im Linux-System
  • Praxis der Linux-Datei- und Benutzerverwaltung

<<:  Zwei Möglichkeiten, den 30-Sekunden-Werbecode aus dem Youku-Video zu entfernen

>>:  Implementierung des Einfügens von Millionen von Datensätzen in eine MySQL-Datenbank innerhalb von 10 Sekunden

Artikel empfehlen

Detaillierte Erklärung der Definition und Funktion von Trennzeichen in MySQL

Wenn Sie MySQL zum ersten Mal lernen, verstehen S...

Detaillierte Erklärung des Vue2 Cube-UI-Zeitwählers

Inhaltsverzeichnis Vorwort 1. Anspruch und Wirkun...

Detaillierte Erklärung der MySQL information_schema-Datenbank

1. Übersicht Die Datenbank information_schema ist...

Detaillierte Erklärung des Hintergrund-Positionsprozentsatzprinzips

Als ich heute jemandem beim Anpassen des Codes ha...

Erstellen Sie in 5 Minuten einen WebRTC-Videochat

Im vorherigen Artikel habe ich den detaillierten ...

Eine kurze Erläuterung des Navigationsfensters in Iframe-Webseiten

Eine kurze Erläuterung des Navigationsfensters in...

Verstehen von MySQL-Deadlock-Routinen durch eindeutige Index-S-Sperre und X-Sperre

In „MySQL-Deadlock-Probleme anhand des Quellcodes...

Implementierung der Vue-Einzeldateikomponente

Ich habe kürzlich über Vue gelesen. Ich habe eine...

Tutorial zur Installation von mysql5.7.23 auf Ubuntu 18.04

In diesem Artikel erfahren Sie, wie Sie mysql5.7....

Zusammenfassung häufig verwendeter Leistungstestskripte für VPS-Server

Hier ist ein allgemeines Ein-Klick-Leistungstests...

So verwenden Sie rsync unter Linux

Inhaltsverzeichnis 1. Einleitung 2. Installation ...