Manuel complet du fichier /etc/shadow sous Linux
Les fichiers Shadow et les fichiers passwd sont généralement utilisés pour effectuer le processus d'authentification sous Linux. Les fichiers Shadow sont des fichiers texte utilisés pour stocker les données utilisateur sur un système. La chose la plus importante est la commande Linux vi, où le mot de passe est enregistré au format crypté ou haché.
Le stockage des mots de passe dans le fichier /etc/passwd peut facilement rendre le système non sécurisé. Les fichiers Shadow ont des autorisations de fichier définies sur 640 ou 400.
Que allons-nous couvrir ?
Dans cet article, nous expliquerons les fichiers Shadow sous Linux.
Pourquoi avons-nous besoin de fichiers fantômes ?
Le fichier passwd sous Linux est lisible par tout le monde et à cet effet les mots de passe cryptés sont transférés vers différents fichiers appelés fichiers fantômes. Il ne peut être lu que par root. Les fichiers Shadow se trouvent également dans /etc/shadow dans le dossier /etc.
Très similaire au fichier passwd, le premier tableau du fichier shadow contient les noms de compte et utilise des virgules pour séparer les différentes clés primaires. Avoir un fichier séparé contenant des mots de passe cryptés permet également d'ajouter de nouveaux paramètres au compte. Il est rapporté que cela aide à contrôler les comptes et à contrôler le vieillissement des mots de passe.
Les fichiers fantômes restent protégés en lecture pour protéger les mots de passe cryptés. Il s'agit d'une mesure de sécurité importante, car toute personne ayant un accès en lecture au fichier peut tenter de déchiffrer le mot de passe de cryptage.
Aspects de sécurité des fichiers fantômes
Le fichier Shadow est un bon outil pour réinitialiser le mot de passe root du système Linux. Nous pouvons trouver l'entrée du compte de l'utilisateur root et manipuler certains paramètres pour récupérer le mot de passe root. Cependant, le processus de récupération des mots de passe à partir de fichiers fantômes est actuellement hors sujet.
Comme mentionné précédemment, les fichiers shadow ne peuvent être lus que par le répertoire racine. Si un titulaire de compte malveillant tente de pirater d'autres comptes système autorisations de répertoire Linux, etc., il se cognera simplement la tête contre un arbre. En supposant que quelqu'un obtienne le mot de passe sous une forme ou une autre, le temps nécessaire pour le déchiffrer dépend de l'algorithme de cryptage utilisé. Pourtant, ce n’est pas facile, car le cryptage des mots de passe peut prendre de quelques minutes à plusieurs années.
Modèles de phrases pour les fichiers fantômes
Le modèle de phrase du fichier fantôme est le suivant :
login:encyrptedpassword:lastchangedate:min_age:max_age:warning:inactivity:expiration_date:reserved
Le tableau de la ligne supérieure est exprimé en jours. lastchange et expiration sont des tableaux de dates. L'heure dans un tel tableau est prise à partir de la date de début de l'heure Unix autorisations du répertoire Linux, etc., qui est le 1er janvier 1970.
Description des clés primaires dans les fichiers shadow
Il y a neuf tableaux dans ce fichier, séparés par des guillemets ':'
Laissez-moi vous expliquer le tableau de bits ici :
Connexion : chaque ligne du fichier Shadow commence par le nom d'utilisateur. Le nom d'utilisateur relie l'entrée du fichier Shadow à l'entrée dans /etc/passwd.
Kryptopasswort: Es ist ein Platzhalter für das verschlüsselte Passwort. Auch wenn es keinerlei Ähnlichkeit mit einem echten Passwort hat. Wenn hier ein * oder ! steht, bedeutet dies, dass das Konto kein Passwort hat.
Datum der letzten Änderung – Es handelt sich im Grunde um ein Datum, das als Anzahl der Tage ab Beginn der Unix-Zeit ausgedrückt wird. Dies ist die Uhrzeit, die das Datum der letzten Passwortänderung angibt. Wenn der Wert 0 ist, bedeutet dies, dass der Benutzer das Passwort bei der letzten Anmeldung ändern muss.
minage–Dieses Array gibt an, dass das Passwort nur geändert wird, wenn der Datumswert minage+lastage ist. Wenn das Array leer ist, bedeutet dies, dass das Passwort jederzeit geändert werden kann.
maxage – Dieses Array gibt an, dass das Passwort geändert werden muss, wenn der Datumswert maxage+lastage ist. Es ist tatsächlich das Datum, an dem das Passwort abläuft. Bei leeren Passwörtern ist das Ablaufdatum bedeutungslos, sodass die Arrays maxage, warning und inactivity nicht benötigt werden.
Warnung – Wenn sich das Datum auf lastchange+maxage-warning ändert oder der Passwort-Warnzeitraum begonnen hat, wird der Benutzer gewarnt, das Passwort zu ändern. Wenn der Wert 0 oder leer (leer) ist, bedeutet dies, dass es keinen Warnzeitraum gibt.
Inaktivität – Wenn ein Passwort abläuft, können Benutzer ihr Passwort noch ändern, bis die Anzahl der Tage der Inaktivität erreicht ist. Wenn dieses Feld nicht ausgefüllt ist, gibt es keinen Inaktivitätszeitraum.
Ablaufdatum – Dies ist das Datum, an dem das Konto des Benutzers abläuft. Von nun an wird es schwierig sein, sich bei diesem Konto anzumelden. Wenn dieses Array leer ist, läuft das Konto niemals ab. Verwenden Sie hier auch niemals den Wert „0“.
Sonderzeichen: Dieser Ort wird normalerweise nicht genutzt und ist für die zukünftige Nutzung reserviert.
Jetzt verwenden wir ein Gegenbeispiel, um unser Verständnis der obigen Anordnung zu veranschaulichen. Nehmen Sie den folgenden Beispieleintrag in der Schattendatei:
linux-console:$6$kKRCC8ip8nKtFjjdZJIj:12825:14:45:10:30:13096
Lassen Sie uns jedes Bit des Arrays schrittweise aufschlüsseln:
1.linux-console ist der Benutzername.
2. Das nächste Array ist das verschlüsselte Passwort des Benutzers. Dies ist ein sehr langes Passwort. Der Einfachheit halber haben wir es jedoch leicht gekürzt.
3. Der Benutzer hat das Passwort vor 12825 Tagen oder am 11. Januar 35 geändert, also am 11. Februar 2005 seit der Unix-Epoche (d. h. am 1. Januar 1970).
4. Die Mindestfrist für die Passwortänderung beträgt 14 Tage. Um das Passwort jederzeit änderbar zu machen, setzen Sie dieses Array auf 0.
5. Das Passwort muss alle 45 Tage zurückgesetzt werden.
6. Eine Warnung zum Zurücksetzen Ihres Passworts erscheint 10 Tage vor dem Änderungsdatum.
7. Wenn das Passwort abläuft und innerhalb von 30 Tagen kein Anmeldevorgang durchgeführt wird, wird das Benutzerkonto deaktiviert.
8. Das Konto läuft 13096 Tage nach der Unix-Epoche oder dem 9. November 2005 ab.
Inferenz
Shadow-Dateien sind ein besonders sicherer Ort zum Speichern Ihrer Kontoinformationen. Es besteht ein Sicherheitsproblem bei sicheren Benutzerkennwörtern in passwd-Dateien. Wenn Sie Shadow-Dateien für Root lesbar machen, entfällt lediglich die Möglichkeit für böswillige Benutzer und Angreifer, Passwörter auszunutzen.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!