Linux-Lernen [21] Konten und Gruppen 1 ---Erklärung der Felder /etc/passwd und /etc/shadow in Linux

Vorwort

Beim Ändern der Berechtigungen eines Raspberry Pi-Benutzers in Administratorrechte müssen /etc/passwdDateien geändert werden. Die spezifische Bedeutung der Felder war zu diesem Zeitpunkt nicht eindeutig. Nachdem ich kürzlich relevante Bücher gelesen habe, finden Sie hier eine Erklärung.
Da der relevante Inhalt kontobezogen ist, fügen wir gleichzeitig auch einige kontobezogene Inhalte in Linux hinzu.
Blogs zum Thema Raspberry Pi


1. Beschreibung des Passwortfeldes

Geben Sie den Befehl ein cat /etc/passwd, um den Dateiinhalt anzuzeigen

Fügen Sie hier eine Bildbeschreibung einDie erste Zeile der passwd-Datei in jedem Linux-System ist die Root-Administratorzeile. Diese Zeile enthält sieben Felder, die :durch getrennt sind.
Die Bedeutung dieser sieben Felder entspricht der folgenden Tabelle:

Kontoname Passwort UID GID Beschreibungsspalte für Benutzerinformationen Hauptordner Hülse
Wurzel X 0 0 Wurzel /Wurzel /bin/bash

帐号名称:
Linux identifiziert sich tatsächlich anhand der UID, aber die UID ist für Benutzer nicht leicht zu merken, daher ist ein Kontoname erforderlich, der der UID entspricht. Beispielsweise ist die entsprechende UID von root 0 (das dritte Feld);

密码:
In diesem Feld wurde das Passwort früherer Unix-Systeme abgelegt. Aufgrund der Eigenschaften dieser Datei kann sie jedoch von allen Programmen gelesen werden, was leicht zum Diebstahl der Passwortdaten führen kann. Daher wurden die Passwortdaten in diesem Feld später geändert . In /etc/shadow. Hier sehen Sie also ein „x“.

UID:
Dies ist der Benutzeridentifikationscode. Normalerweise hat Linux mehrere Einschränkungen für die UID:

ID-Bereich Die ID-Benutzereigenschaften
0 (Systemadministrator) Wenn die UID 0 ist, bedeutet dies, dass dieses Konto der „Systemadministrator“ ist! Wenn Sie also möchten, dass auch andere Kontonamen über Root-Berechtigungen verfügen, ändern Sie einfach die UID des Kontos auf 0. Das bedeutet, dass der Systemadministrator auf einem System nicht nur Root sein darf! Es wird jedoch nicht empfohlen, mehrere Konten mit der UID 0 zu haben. Dies kann den Systemadministrator leicht verwirren!
1~999 (Systemkonto) ID ist für die Systemverwendung reserviert. Tatsächlich unterscheiden sich andere UID-Berechtigungen und -Merkmale bis auf 0 nicht. Es ist einfach üblich, Nummern unter 1000 standardmäßig als reservierte Konten im System zu belassen.

Da die auf dem System gestarteten Netzwerkdienste oder Hintergrunddienste mit geringeren Berechtigungen ausgeführt werden sollen, möchten wir zum Ausführen dieser Dienste nicht die Root-Identität verwenden, daher müssen wir das Besitzerkonto dieser laufenden Programme angeben. Auf diese Systemkonten kann normalerweise nicht zum Anmelden zugegriffen werden, daher existiert die spezielle Shell /sbin/nologin, die wir in Kapitel 10 erwähnt haben.

Entsprechend der Herkunft von Systemkonten werden solche Konten üblicherweise grob in zwei Typen eingeteilt:

ID-Bereich Die ID-Benutzereigenschaften
1~200 Systemkonto, das von Distributionen selbst erstellt wurde;
201~999 Wenn der Benutzer ein Systemkonto benötigt, kann die Konto-UID verwendet werden.
1000~60000 (Sie können sich bei Ihrem Konto anmelden) Für allgemeine Benutzer. Tatsächlich kann der aktuelle Linux-Kernel (Version 3.10.x) bereits eine so große UID-Nummer wie 4294967295 (2^32-1) unterstützen.

Wenn die UID 0 ist, handelt es sich um Root. Achten Sie daher besonders auf Ihre /etc/passwd

GID:
Dies hängt mit /etc/group zusammen. Tatsächlich ähnelt das Konzept von /etc/group dem von /etc/passwd, außer dass es zur Standardisierung der Entsprechung zwischen Gruppennamen und GIDs verwendet wird.

使用者信息说明栏:
Dieses Feld hat grundsätzlich keinen wichtigen Zweck, es dient lediglich der Erläuterung der Bedeutung dieses Kontos.

主文件夹:
Dies ist der Home-Ordner des Benutzers. Im obigen Beispiel befindet sich der Home-Ordner von Root in /root. Wenn sich Root anmeldet, wird er also sofort in das Verzeichnis /root verschoben. Wenn Sie ein Konto mit besonders großem Speicherplatz haben, was sollten Sie tun, wenn Sie den Hauptordner des Kontos auf eine andere Festplatte verschieben möchten? In diesem Feld können Änderungen vorgenommen werden. Der Standard-Benutzer-Home-Ordner ist /home/IhrID-Name

Shell:
Wir haben in Kapitel 10 BASH mehrfach erwähnt, dass ein Benutzer, wenn er sich beim System anmeldet, eine Shell erhält, um mit dem Kern des Systems zu kommunizieren und die Betriebsaufgaben des Benutzers auszuführen. Warum verwendet die Standard-Shell also Bash? Es wird in diesem Feld angegeben. Hier ist zu beachten, dass es eine Shell gibt, die verwendet werden kann, um die Anmeldeaktion zu ersetzen, die verhindert, dass das Konto die Shell-Umgebung erhält, nämlich /sbin/nologin. Dies kann auch zum Erstellen von Daten für reines Pop verwendet werden E-Mail-Konten.


2. Beschreibung des Schattenfeldes

Das Passwort für das Konto in passwd wird als x angezeigt, da ihre Passwörter in der Schattendatei abgelegt und teilweise verschlüsselt werden.
Sie können den Inhalt der Datei durch sehen sudo cat /etc/shadow. Insgesamt gibt es neun Felder, :getrennt durch.
Fügen Sie hier eine Bildbeschreibung ein

Jedes Feld wird unten erklärt

Kontoname Konto Passwort Datum der letzten Passwortänderung Das Passwort kann nicht geändert werden. Datum Anzahl der Tage, bis das Passwort erneut geändert werden muss Anzahl der Warntage, bevor eine Passwortänderung erforderlich ist Kulanzzeit des Kontos nach Ablauf des Passworts (Passwort-Ablaufdatum). Ablaufdatum des Kontos Reservieren
Wurzel ! 19541 0 99999 7

帐号名称:
Da auch das Passwort mit der Kontonummer übereinstimmen muss, ist die erste Spalte dieser Datei die Kontonummer, die mit /etc/passwd identisch sein muss.

密码:
Die Daten in diesem Feld sind das echte Passwort und es handelt sich um ein verschlüsseltes Passwort (verschlüsselt). Sie werden nur Buchstaben mit einigen Sonderzeichen sehen. Was besondere Aufmerksamkeit erfordert, ist, dass diese verschlüsselten Passwörter zwar schwer zu entschlüsseln sind, „schwierig“ jedoch nicht „nicht möglich“ bedeutet. Daher lautet die Standardeinstellung dieser Datei. Die Berechtigung lautet „-rw“. -------“ oder „----------“, das heißt, nur Root kann lesen und schreiben.

Da außerdem verschiedene Passwortkodierungstechniken unterschiedlich sind, führen unterschiedliche Kodierungssysteme dazu, dass die Länge dieses Felds unterschiedlich ist. Beispielsweise unterscheidet sich die von den alten Verschlüsselungssystemen DES und MD5 generierte Passwortlänge vom derzeit verwendeten SHA [2]! Die Passwortlänge von SHA ist offensichtlich länger. Da die von einem festen Verschlüsselungssystem generierten Passwörter eine konsistente Länge haben müssen, „wird das Passwort ungültig (kann nicht berechnet werden), wenn Sie die Länge dieses Felds ändern.“ Viele Softwareprogramme verwenden diese Funktion, um vor diesem Feld ein „!“ oder „*“ hinzuzufügen, um die Länge des Passwortfelds zu ändern, wodurch das Passwort „vorübergehend ungültig“ wird.

最近更动密码的日期:
In diesem Feld wird das Datum „des Tages, an dem das Passwort geändert wurde“ aufgezeichnet. Das Linux-Datum wird unter Verwendung des 1. Januar 1970 als 1 und des akkumulierten Datums berechnet. Der 1. Januar 1971 ist 366 und 19541 bezieht sich auf 2023. Ein Tag. Das können Sie selbst berechnen.

密码不可被更动的天数:(与第 3 字段相比)
Das vierte Feld erfasst: Wie viele Tage vergehen, nachdem das Passwort dieses Kontos das letzte Mal geändert wurde, bevor es erneut geändert werden kann! Wenn es 0 ist, bedeutet dies, dass das Passwort jederzeit geändert werden kann. Diese Einschränkung soll verhindern, dass das Passwort von einigen Personen immer wieder geändert wird! Wenn es auf 20 Tage eingestellt ist, können Sie das Passwort nach dem Festlegen des Passworts nicht innerhalb von 20 Tagen ändern.

密码需要重新变更的天数:(与第 3 字段相比)
Es ist eine gute Angewohnheit, Ihr Passwort regelmäßig zu ändern! Um Benutzer zu zwingen, ihre Passwörter zu ändern, kann in diesem Feld angegeben werden, wie viele Tage nach der letzten Passwortänderung das Passwort erneut geändert werden muss. Sie müssen Ihr Passwort innerhalb dieser Anzahl von Tagen zurücksetzen, andernfalls wird das Passwort des Kontos „abgelaufen“. Und wenn es wie oben 99999 (berechnet als 273 Jahre) ist, heißt das, haha, die Passwortänderung ist nicht obligatorisch.

密码需要变更期限前的警告天数:(与第 5 字段相比)
Wenn das Ablaufdatum des Passworts des Kontos bald abläuft (Feld 5), gibt das System basierend auf der Einstellung dieses Felds eine „Warnung“ an das Konto aus und erinnert es daran, dass „Ihr Passwort in n Tagen abläuft, bitte beeilen Sie sich.“ Wenn Sie Ihr Passwort zurücksetzen“, wie im Beispiel oben, warnt das System den Benutzer innerhalb von 7 Tagen vor Ablauf des Passworts.

密码过期后的帐号宽限时间(密码失效日):(与第 5 字段相比)
Das Gültigkeitsdatum des Passworts ist „Aktualisierungsdatum (Feld 3)“ + „Erneutänderungsdatum (Feld 5)“. Wenn der Benutzer das Passwort nach diesem Zeitraum immer noch nicht aktualisiert, gilt das Passwort als abgelaufen. Obwohl das Passwort abgelaufen ist, kann das Konto weiterhin für andere Aufgaben verwendet werden, einschließlich der Anmeldung beim System, um Bash zu erhalten. Wenn das Passwort jedoch abläuft, wenn Sie sich beim System anmelden, werden Sie vom System gezwungen, Ihr Passwort zurückzusetzen, bevor Sie sich anmelden und es weiterhin verwenden können. Dies ist die Funktion zum Ablaufen des Passworts.

Welche Funktion hat dieses Feld? Wenn sich der Benutzer einige Tage nach Ablauf des Passworts immer noch nicht anmeldet, um das Passwort zu ändern, läuft das Passwort für dieses Konto ab, d. h. das Konto kann nicht mehr mit dem Passwort angemeldet werden. Es ist wichtig zu beachten, dass der Ablauf eines Passworts nicht dasselbe ist wie der Ablauf eines Passworts.

帐号失效日期:
Dieses Datum wird wie das dritte Feld anhand der Gesamtzahl der Tage seit 1970 festgelegt. Dieses Feld zeigt an: Dieses Konto steht nach dem in diesem Feld angegebenen Datum nicht mehr zur Nutzung zur Verfügung. Dies ist der sogenannte „Kontoablauf“. Zu diesem Zeitpunkt kann dieses „Konto“ nicht mehr verwendet werden, unabhängig davon, ob Ihr Passwort abgelaufen ist! Dieses Feld wird normalerweise im System „Bezahlter Dienst“ verwendet. Sie können ein Datum angeben, an dem das Konto nicht mehr verwendet werden kann!

保留:
Das letzte Feld ist reserviert, um zu sehen, ob in Zukunft neue Funktionen hinzugefügt werden.


Zusammenfassen

In diesem Blog werden hauptsächlich die Prinzipien aufgezeichnet und erläutert, die mit einigen Problemen im Zusammenhang mit der Raspberry Pi-Konfiguration verbunden sind.

Ich denke du magst

Origin blog.csdn.net/Edwinwzy/article/details/132361491
Empfohlen
Rangfolge