Fichier de mot de passe d'ombre dans Linux

Fichier de mot de passe d'ombre dans Linux
Le fichier Shadow est probablement l'un des fichiers les plus importants de votre système Linux, et c'est parce qu'il stocke les mots de passe chiffrés réels pour tout sur votre système. Le fichier d'ombre est situé à / etc / ombre, et n'est accessible qu'à l'utilisateur racine. En fait, il a une autorisation de 640 qui accorde la permission du propriétaire en lecture-écriture, et l'autorisation de lecture du groupe. Dans ce tutoriel, nous allons passer en revue le fichier de l'ombre.

Le fichier d'ombre contient des informations séparées par un côlon. Donc, ça ressemblerait à ceci:

Dans mon cas, je vais choisir l'un des utilisateurs (utilisateur = kalyani) pour l'utiliser comme exemple.

Kalyani: 6 $ $ uusxwcvo $ ic9kn9ds0bhn.Nu.5H7RACEQBTJPJQWPEJ5O5Y7JLRQK0HDQRZKBZ
B1v6CowHHCPK25PAIELCJEQC6E02EXYA.: 18917: 0: 99999: 7 :::

Ici, il y a neuf champs séparés par des colons!

1. Le premier champ est le nom d'utilisateur lui-même. Dans mon cas, c'est Kalyani, cependant, dans votre cas, ce serait votre nom d'utilisateur.
2. Le deuxième champ contient le mot de passe crypté

(6 $ $ uusxwcvo $ ic9kn9ds0bhn.Nu.5H7RACEQBTJPJQWPEJ5O5Y7JLRQK0HDQRZKBZB1V6COWHHCPK25PAIELCJEQC6E02EXYA.). Ici, il y a des signes de trois dollars. Entre le signe du premier et du deuxième dollar se trouve le type de cryptage; Entre le signe du deuxième et du troisième dollar se trouve le sel, et après le troisième signe du dollar est le hachage lui-même.

Ici, vous pouvez voir 6 $, ce que cela signifie, c'est que le type de chiffrement est SHA-512. C'est comme suit:

  1. 1 $ - MD5
  2. 2 $ - Blowfish
  3. 3 $ - Blowfish
  4. 5 $ - SHA-256
  5. 6 $ - SHA-512

Après cela est uusxwcvo, le sel. Afin de rendre le hachage plus unique, nous ajoutons ce que l'on appelle un sel. Le sel lui-même est une séquence aléatoire de caractères. Cette séquence de caractère aléatoire est attachée au mot de passe pendant que le hachage est calculé.

Si vous voulez essayer de le vérifier vous-même, vous pouvez le faire avec le package whois. Tout d'abord, installez le package WHOIS:

$ sudo apt-get install whois

Ensuite, une fois le package WHOIS installé, vous pouvez taper ce qui suit:

$ Mkpasswd -m SHA-512 Mot de passe [SALT]

Dans ce dernier, remplacez le mot de passe par le mot de passe que vous souhaitez et le sel par le sel que vous souhaitez.

Par exemple:

$ mkpasswd -m sha-512 toor uusxwcvo

La dernière partie du mot de passe crypté ou la substance après le troisième signe du dollar est le hachage réel.

3. Le troisième champ est la date du dernier changement de mot de passe. Le nombre est calculé sur la base de l'époque (1er janvier 1970). Cela signifie que le nombre est calculé en fonction de la date de l'époque. Dans mon cas, ce nombre est 18917. Si ce champ est vide, cela signifie que les fonctionnalités de vieillissement du mot de passe ne sont pas activées. Un 0 dans ce domaine signifie que l'utilisateur doit modifier son mot de passe sur la connexion suivante.

4. Le quatrième champ est l'âge minimum de mot de passe. L'âge minimum de mot de passe est le temps en jours qui doit passer avant que l'utilisateur puisse être autorisé à apporter des modifications au mot de passe. Une valeur de 0 signifie qu'il n'y a pas d'âge minimum de mot de passe. Dans mon cas, c'est 0. Cela signifie que sur mon système, il n'y a pas d'âge minimum de mot de passe.

5. Le cinquième champ est l'âge maximum de mot de passe. L'âge du mot de passe maximum est le temps des jours où il faut avant que l'utilisateur ne soit tenu de modifier le mot de passe. Une valeur vide dans ce domaine signifie qu'il n'y a pas d'âge de mot de passe maximum. Dans mon cas, ce nombre est de 99999.

6. Le sixième champ est la période d'avertissement de mot de passe. L'utilisateur sera averti quelques jours avant l'expiration du mot de passe, c'est la période d'avertissement du mot de passe. Dans mon cas, c'est 7.

7. Le septième champ est la période d'inactivité du mot de passe. La période d'inactivité du mot de passe est le temps en jours où un mot de passe expiré est toujours accepté. Une fois cette période terminée et que le mot de passe expire, la connexion serait impossible. Dans mon cas, le champ est vide, et ce que cela signifie, c'est qu'il n'y a pas de période d'inactivité de mot de passe.

8. Le huitième champ est la date d'expiration du compte. La date d'expiration du compte est exactement comme cela semble, le jour où le compte expire. Ce nombre est exprimé depuis l'époque (1er janvier 1970).

9. Le neuvième champ est un champ réservé. Ce champ est réservé à l'avenir et n'est actuellement pas utilisé.

Changer le mot de passe

Ce que tout cela signifie, c'est que le mot de passe doit être régulièrement mis à jour ou modifié. La question suivante est de savoir comment changer le mot de passe actuel et éviter toutes sortes de problèmes de vieillissement de mot de passe? Afin de modifier le mot de passe, il faut être root!

$ sudo passwd nom d'utilisateur

Au lieu de nom d'utilisateur, entrez votre propre nom d'utilisateur pour lequel vous souhaitez modifier le mot de passe. Cela vous invitera pour le mot de passe actuel. Une fois que vous l'avez entré, il vous demandera le nouveau mot de passe, et vous pouvez également saisir cela. Et c'est tout!

Modifier les informations d'expiration du mot de passe utilisateur

Une autre information que l'on pourrait envisager de modifier est les informations d'expiration du mot de passe. Dans de tels cas, la commande Chage est très pratique!

Pour Chage, vous pouvez l'utiliser avec ce qui suit:

Chage [Options]

-D, -Lastday

C'est la date du dernier changement de mot de passe depuis l'époque. Il est écrit comme yyyy-mm-dd.

-E,-expiré

Cela définit la date à laquelle le compte sera désactivé. La date elle-même est exprimée comme yyyy-mm-dd, et est depuis l'époque. Si vous passez -1, il n'y aura pas de date d'expiration de compte.

-H, -Help

Cela affichera l'aide.

-I, -Inactive

Cela définit la période d'inactivité du mot de passe. Si vous mettez -1 dans le champ inactif, il n'y aura pas d'informations d'inactivité.

-L, -List

Cela affiche des informations sur le vieillissement du mot de passe.

-M, -Mindays

Cela définit le nombre de jours entre le changement de mot de passe. Si vous mettez 0, cela signifie que l'utilisateur peut changer son mot de passe à tout moment.

-M, -Maxdays

Cela définit le nombre maximum de jours lorsque le mot de passe actuel est actif. Si -1 est passé, il supprimera la vérification de la validité du mot de passe.

-W, -Warndays

Cela définit la période d'avertissement de mot de passe.

Le fichier Shadow est de loin le fichier le plus important de votre système Linux. Auparavant, le fichier Passwd contenait tous les mots de passe, mais ces jours-ci, le fichier passwd est un fichier texte brut qui contient des informations utilisateur, et le fichier de l'ombre contient à la place toutes les informations de mot de passe! Et parce qu'il contient des informations sur le mot de passe, il est à la fois verrouillé pour le super utilisateur et haché (crypté).

Dans le fichier de l'ombre se trouvent les one-liners contenant neuf champs séparés par des colons, chacun exprimant des informations de mot de passe ou un mot de passe. Quoi qu'il en soit, le fichier de l'ombre est à la fois protégé et verrouillé!

Codage heureux