1. Home
  2. Linux
  3. Systemadministration
  4. Format der Datei /etc/shadow

Format der Datei /etc/shadow

Die Datei /etc/shadow gehört mit den Dateien /etc/passwd und /etc/group zum Benutzerverwaltungssystem. Die Datei /etc/shadow bildet hierbei die Kernkomponente bzgl. der Passwörter. Hier werden neben dem gehashten Passwort auch Informationen bzgl. der Passwortrichtlinien pro User untergebracht. Früher wurde das gehashte Passwort zusammen mit dem Useraccout in der Datei /etc/passwd untergebracht, was allerdings zunehmend als Sicherheitsproblem wahrgenommen wurde, weil die /etc/passwd für jeden User lesbar sein muss. Deshalb wurden die sicherheistrelevanten Informationen in die /etc/shadow verlegt, welche nur vom Benutzer root gelesen werden darf.

Der Aufbau der Datei »/etc/shadow«:

pronto:$1$hCmMb2Ix$bAGVIJKYfBKavZt5Ee9ZL/:15050:0:99999:7:::

Der verwendete Algorithmus, das verwendete Salt und der Passworthash werden mit einem $-Zeichen als Delimiter getrennt, bei den übrigen Werten wird der Doppelpunkt (:) als Delimiter verwendet.

WertParameterBedeutung
prontoEntspricht dem Username, wie er auch in der /etc/passwd zu finden ist
1ENCRYPT_METHODEntspricht dem Algorithmus, welcher für die Erstellung des Hashwertes verwendet wurde. 1 steht für md5; 2Blowfish; 5SHA-256; 6SHA-512 als verwendeten Algorithmus.
hCmMb2IxDies ist das Salt welches verwendet wird, um dem Algorithmus zum Erstellen des Hash Wertes eines Passworts eine zufällige Komponente mitzugeben. Andernfalls würde der Algorithmus bei gleichem Passwort auch immer den gleichen Hash Wert erzeugen, was ebenfalls ein Sicherheitsproblem wäre.
bAGVIJKYfBKavZt5Ee9ZL/Der eigentliche Hashwert des Passworts
15050Die Anzahl der Tage seit dem 01.01.1970 wo das Passwort zum letzten Mal geändert wurde.
0PASS_MAX_DAYSDie Anzahl der Tage bevor das Passwort geändert werden kann. Eine 0 bedeutet, es kann jederzeit geändert werden.
99999PASS_MIN_DAYSDie Anzahl der Tage nachdem das Passwort geändert werden muss. Eine 99999 bedeutet, dass das Passwort nie abläuft.
7PASS_WARN_AGEDie Anzahl der Tage nachdem ein Account deaktiviert wird, wenn der ggf. eingestellte Zeitraum für den Passwortwechsel nicht eingehalten wurde.
::Die Anzahl der Tage, welcher der Account bereits gesperrt ist. Hier im Beispiel ein leeres Feld welches signalisiert, dass der Account aktiv ist.
::Ein Reservefeld
Feldbeschreibung der Einträge in /etc/shadow

Die Parameter ENCRYPT_METHOD, PASS_MAX_DAYS, PASS_MIN_DAYS, PASS_WARN_AGE werden in der Datei /etc/login.defs eingestellt.

Die Angaben treffen auf Debian bzw. Ubuntu Linux zu. Andere Distributionen haben ggf. davon abweichende Vorgehensweisen.

--Pronto

Updated on 10. Oktober 2022
Was this article helpful?

Related Articles