Datei /etc/passwd
Zweck
Enthält Basisbenutzerattribute.
Beschreibung
Ein Eintrag in der Datei /etc/passwd hat das folgende Format:
Name : Passwort : Benutzer-ID : PrincipleGroup : Gecos : HomeDirectory : Shell
Attribute in einem Eintrag werden durch einen Doppelpunkt (:) getrennt. Aus diesem Grund sollten Sie in keinem Attribut einen Doppelpunkt (:) verwenden. Die Attribute sind wie folgt definiert:
| Attribut | Definition |
|---|---|
| Name | Gibt den Anmeldenamen des Benutzers an Es gibt eine Reihe von Einschränkungen bei der Benennung von Benutzern. Weitere Informationen finden Sie in der Beschreibung des Befehls mkuser . |
| Kennwort | Enthält einen Stern (*), der ein ungültiges Kennwort oder ein! (Ausrufezeichen) Gibt an, dass sich das Kennwort in der /etc/security/passwd befindet. Unter normalen Bedingungen enthält das Feld ein!. Wenn das Feld einen Stern (*) enthält und ein Kennwort für die Benutzerauthentifizierung erforderlich ist, kann sich der Benutzer nicht anmelden. |
| UserID | Gibt die eindeutige numerische ID des Benutzers an. Diese ID wird für die eignerdefinierte Zugriffssteuerung verwendet. Der Wert ist eine eindeutige ganze Dezimalzahl. |
| PrincipleGroup | Gibt die Principalgruppen-ID des Benutzers an Dies muss die numerische ID einer Gruppe in der Benutzerdatenbank oder eine Gruppe sein, die von einem Netzinformationsservice definiert wird. Der Wert ist eine eindeutige ganze Dezimalzahl. |
| Gecos | Gibt allgemeine Informationen über den Benutzer an, die vom System nicht benötigt werden, z. B. eine Büro-oder Telefonnummer. Der Wert ist eine Zeichenfolge. Das Feld Gecos darf keinen Doppelpunkt enthalten. |
| HomeDirectory | Gibt den vollständigen Pfadnamen des Benutzerausgangsverzeichnisses an. Wenn der Benutzer kein definiertes Ausgangsverzeichnis hat, wird das Ausgangsverzeichnis des Gastbenutzers verwendet. Der Wert ist eine Zeichenfolge. |
| Shell | Gibt das Startprogramm oder die Shell an, das bzw. die ausgeführt wird, wenn ein Benutzer den Befehl Anmeldung oder Su aufruft. Wenn ein Benutzer keine definierte Shell hat, wird /usr/bin/sh, die Systemshell verwendet. Der Wert ist eine Zeichenfolge, die Argumente enthalten kann, die an das Startprogramm übergeben werden. |
Benutzer können zusätzliche Attribute in anderen Systemdateien haben. Weitere Informationen finden Sie im Abschnitt "Dateien".
Benutzerdatei ändern
Sie sollten über die Systembefehle und Subroutinen, die für diesen Zweck definiert sind, auf die Benutzerdatenbankdateien zugreifen. Der Zugriff über andere Befehle oder Subroutinen wird in zukünftigen Releases möglicherweise nicht unterstützt. Verwenden Sie die folgenden Befehle, um auf Benutzerdatenbankdateien zuzugreifen:
- chfn
- chsh
- chuser
- lsuser
- mkuser
- rmuser
Der Befehl mkuser fügt neue Einträge zur Datei /etc/passwd hinzu und gibt die in der Datei /usr/lib/security/mkuser.default definierten Attributwerte ein.
Das Attribut Passwort wird immer mit einem Stern (*) initialisiert, einem ungültigen Kennwort. Sie können das Kennwort mit dem Befehl Kennwort oder Pwdadm festlegen. Wenn das Kennwort geändert wird, wird ein! (Ausrufezeichen) wird der Datei /etc/passwd hinzugefügt und gibt an, dass sich das verschlüsselte Kennwort in der Datei /etc/security/passwd befindet.
Verwenden Sie den Befehl Benutzer chuser , um alle Benutzerattribute außer Passwortzu ändern. Der Befehl Chfn und der Befehl Chsh ändern das Attribut Gecos bzw. das Attribut Shell . Verwenden Sie den Befehl Befehl lsuser , um alle Attribute in der Datei anzuzeigen. Mit dem Befehl Rmuser können Sie einen Benutzer und alle Attribute des Benutzers entfernen.
Verwenden Sie zum Schreiben von Programmen, die sich auf Attribute in der Datei /etc/passwd auswirken, die im Abschnitt mit den zugehörigen Informationen aufgelisteten Subroutinen.
Sicherheit
Zugriffssteuerung: Diese Datei sollte allen Benutzern Lese-(r) und Schreibzugriff (w) nur dem Rootbenutzer und den Mitgliedern der Sicherheitsgruppe erteilen.
Beispiele
- Typische Datensätze, die ein ungültiges Kennwort fürsmithundguestfolgen:
Die Felder haben die folgende Reihenfolge: Benutzername, Kennwort, Benutzer-ID, Primärgruppe, allgemeine Informationen (gecos), Ausgangsverzeichnis und Startprogramm (Anmeldeshell). Der Stern (*) im Kennwortfeld gibt an, dass das Kennwort ungültig ist. Jedes Attribut wird durch einen Doppelpunkt (:) getrennt.smith:*:100:100:8A-74(office):/home/smith:/usr/bin/sh guest:*:200:0::/home/guest:/usr/bin/sh - Wenn das Kennwort fürsmithim vorherigen Beispiel in ein gültiges Kennwort geändert wird, wird der Datensatz wie folgt geändert:
Das! (Ausrufezeichen) Gibt an, dass ein verschlüsseltes Kennwort in der Datei /etc/security/passwd gespeichert wirdsmith:!:100:100:8A-74(office):/home/smith:/usr/bin/sh
Dateien
| Element | Beschreibung |
|---|---|
| /etc/passwd | Enthält Basisbenutzerattribute. |
| /usr/lib/security/mkuser.default | Enthält Standardattribute für neue Benutzer |
| /etc/group | Enthält die Basisattribute von Gruppen. |
| /etc/security/group | Enthält die erweiterten Attribute von Gruppen. |
| /etc/security/passwd | Enthält Kennwortinformationen. |
| /etc/security/user | Enthält die erweiterten Attribute von Benutzern. |
| /etc/security/environ | Enthält die Umgebungsattribute von Benutzern. |
| /etc/security/limits | Enthält die Prozessressourcengrenzwerte von Benutzern. |