Das Stammkennwort selbst wird
nicht direkt in einer einfachen Textdatei gespeichert. . Stattdessen hashed Die Version des Passworts wird gespeichert. Dies ist eine Einweg-Funktion, was bedeutet, dass es einfach ist, ein Passwort zu haben, aber äußerst schwierig (idealerweise unmöglich), den Hash umzukehren, um das ursprüngliche Passwort zu erhalten.
Hier wird das Hashed -Root -Passwort normalerweise in verschiedenen Linux -Verteilungen gespeichert:
* `/etc/Shadow` :Diese Datei ist der primäre Speicherort für das Speichern von Benutzerkennwortkennwort -Hashes, einschließlich des Kennworts des Root -Benutzers. Entscheidend ist nur der Root -Benutzer hat Lesezugriff auf diese Datei . Dies ist eine kritische Sicherheitsfunktion.
* Die Datei `/etc/Shadow` enthält Einträge im folgenden Format:
`` `
Benutzername:password_hash:last_changed:min_days:max_days:warn_days:inactive_days:expire_date:flags
`` `
* `userername`:Der Benutzername (z. B.` root`).
* `password_hash`:Das Hashed -Passwort. Dies ist eine lange Zeichenfolge, die das Ergebnis einer kryptografischen Hash -Funktion darstellt, die zusammen mit einem Salz auf das Passwort angewendet wird.
* `last_changed`:Die Anzahl der Tage seit der Epoche (1. Januar 1970), als das Passwort zuletzt geändert wurde.
* `min_days`:Die minimale Anzahl von Tagen, die vor dem Passwort vergehen müssen, kann erneut geändert werden.
* `max_days`:Die maximale Anzahl der Tage, an denen das Passwort gültig ist, bevor es geändert werden muss.
* `warn_days`:Die Anzahl der Tage vor Ablauf des Kennworts wird der Benutzer gewarnt.
* `Inactive_days`:Die Anzahl der Tage nach Ablauf des Kennworts, dass das Konto deaktiviert wird.
* `expire_date`:Das Datum des Kontos abläuft.
* `flags`:reserviert für die zukünftige Verwendung.
* `/etc/passwd` :Diese Datei enthält grundlegende Benutzerkontoinformationen, aber sie speichert den Kennwort -Hash nicht mehr direkt in modernen Systemen. Es war früher, aber dies war ein großes Sicherheitsrisiko, da "/etc/passwd" oft weltlesbar ist. In der Regel sehen Sie im Feld Kennwort ein "X", was angibt, dass das Kennwort in `/etc/Shadow` gespeichert ist.
* Beispiel:`root:x:0:0:root:/root:/bin/bash`
Schlüsselkonzepte:
* Hashing: Eine kryptografische Einweg-Funktion, die Daten in eine Zeichenfolge von Zeichen umwandelt (Hash). Es wurde so konzipiert, dass es extrem schwer zu umkehren ist.
* Salz: Eine zufällige Zeichenfolge, die dem Passwort vor Hashing hinzugefügt wurde. Dies macht es den Angreifern viel schwerer, vorbereitete "Regenbogentabellen" zum Knacken von Passwörtern zu verwenden, auch wenn sie die Datei "/etc/shadow`" erhalten. Jedes Passwort hat ein einzigartiges Salz.
* `/etc/Shadow` Berechtigungen: Es ist entscheidend, dass `/etc/Shadow` vom Stammbenutzer * nur * lesbar ist. Jeder andere Benutzer, der diese Datei lesen kann, würde eine erhebliche Sicherheitsanfälligkeit darstellen, da er versuchen könnte, die Passwort -Hashes zu knacken.
* Passwortkomplexität: Die Stärke eines Passwort -Hash hängt auch von der Komplexität des Passworts selbst ab. Längere Passwörter mit einer Mischung aus Großbuchstaben, Kleinbuchstaben, Zahlen und Symbolen sind viel schwieriger zu knacken.
Zusammenfassend: Das Stammkennwort selbst wird nirgendwo direkt gespeichert. Stattdessen ist eine gesalzene und Hashed -Darstellung davon sicher in der Datei "/etc/Shadow" gespeichert, die nur für den Stammbenutzer zugegriffen werden kann. Dies ist ein kritischer Sicherheitsmechanismus zum Schutz des Systems.