Présentation
La commande Linux passwd modifie le mot de passe d'un utilisateur. Un utilisateur ne peut changer que son propre mot de passe, mais le root/superuser peut changer le mot de passe de n'importe quel utilisateur.
Regardons la page de manuel Linux pour comprendre l'utilisation de cette commande. Cela se fait en tapant la commande suivante :
$ man passwd
Mots de passe sous Linux
La méthode traditionnelle de stockage des mots de passe dans un système basé sur UNIX impliquait de stocker les informations dans /etc/passwd fichier.
Ce fichier, cependant, a été consulté par de nombreux programmes et a donc posé un risque de sécurité.
De nos jours, /etc/passwd
le fichier contient uniquement les informations utilisateur essentielles requises lors de la connexion et de l'authentification.
La version cryptée réelle du mot de passe est stockée dans un fichier séparé - /etc/shadow
. Ce fichier n'est accessible qu'à l'utilisateur root.
le fichier se présente comme suit :/etc/passwd
contenu du fichier passwd
Chaque ligne du fichier contient des informations générales sur un programme ou un utilisateur donné. Les champs sont séparés par
:
.
Ces champs sont les suivants :- Nom d'utilisateur (jusqu'à 8 caractères)
- x pour indiquer le mot de passe, qui est stocké dans le
/etc/shadow
fichier au format crypté. - ID utilisateur numérique.
- ID de groupe numérique.
- Nom d'utilisateur complet.
- Chemin du répertoire personnel.
- Chemin du shell préféré. (
"/bin/bash"
)
/etc/shadow
le fichier se présente comme suit (nécessite un accès root) :contenu du fichier fantôme
Ce fichier contient des informations sur le compte et le mot de passe. Les champs sont séparés par
:
.Les champs correspondant aux informations du compte utilisateur sont les suivants :
- Nom d'utilisateur (jusqu'à 8 caractères)
- Le deuxième champ contient le mot de passe crypté et est divisé en sous-champs (séparés par
$
caractère). Le premier sous-champ indique l'algorithme de chiffrement utilisé :$1$ - MD5 $2a$ - Blowfish $2y$ - Blowfish(v2) $5$ - SHA-256 $6$ - SHA-512
Le deuxième sous-champ contient la valeur salt utilisée pendant le processus de chiffrement. Le troisième sous-champ contient le mot de passe crypté.
- Nombre de jours depuis la modification du mot de passe.
- Nombre de jours avant que le mot de passe puisse être modifié (0 indique qu'il peut être modifié à tout moment).
- Nombre de jours après lesquels le mot de passe doit être changé.
- Nombre de jours avant l'expiration du mot de passe pendant lesquels l'utilisateur doit être averti.
- Nombre de jours après lesquels le compte est désactivé après l'expiration d'un mot de passe.
- Nombre de jours depuis le 1er janvier 1970 pendant lesquels le compte est inactif ou désactivé
- Champ réservé pour des informations supplémentaires.
Syntaxe de commande du mot de passe Linux
$ passwd [options]... [LOGIN]...
1. Modification du mot de passe de l'utilisateur actuel
Taper la commande Passwd
Taper passwd invite l'utilisateur à entrer d'abord le mot de passe actuel. L'utilisateur n'a qu'une seule chance de saisir le mot de passe correct. Si le mot de passe saisi est incorrect ou ne peut pas être modifié à ce moment-là, le terminal affiche une erreur et quitte.
Erreur d'authentification Passwd
Une fois le mot de passe saisi, il est crypté et mis en correspondance avec le mot de passe crypté stocké. L'utilisateur est ensuite invité à saisir deux fois le nouveau mot de passe. Les deux mots de passe doivent être suffisamment complexes et correspondre pour être acceptés comme mots de passe valides.
Saisie du nouveau mot de passe
Une erreur s'affiche si le nouveau mot de passe ressemble beaucoup à l'ancien.
Une fois que tous les critères sont remplis, le mot de passe de l'utilisateur actuel est modifié avec succès.
Nouveau mot de passe défini
2. Modification du mot de passe d'un autre utilisateur
La commande suivante est utilisée pour changer le mot de passe d'un autre utilisateur :
$ sudo passwd adam
Étant donné que l'accès root est requis pour modifier les mots de passe des autres utilisateurs, le terminal invite l'utilisateur à saisir le mot de passe. Le processus de modification du mot de passe des autres utilisateurs est identique à celui de l'utilisateur actuel.
Options de la commande Linux passwd
- -d ou –supprimer L'option supprime le mot de passe de l'utilisateur. Il définit le compte de l'utilisateur sans mot de passe.
- -e ou –expiration l'option expire immédiatement le mot de passe de l'utilisateur. Cela peut les forcer à changer leur mot de passe.
- -h ou –aide affiche le message d'aide et quitte.
- -l ou –verrouiller L'option verrouille le mot de passe du compte nommé en ajoutant un '!' au début du mot de passe. Cela empêche le hachage chiffré d'être mis en correspondance avec le hachage stocké. Les utilisateurs dont les mots de passe sont verrouillés ne peuvent pas modifier leurs mots de passe.
- -i [INACTIVE_DAYS] ou –inactif [INACTIVE_DAYS] l'option désactive un compte après l'expiration du mot de passe pendant un certain nombre de jours.
- -n [MIN_DAYS] ou –mindays [MIN_DAYS] L'option définit le nombre minimum de jours entre les changements de mot de passe. Une valeur de
0
suggère qu'un mot de passe peut être modifié à tout moment. - -r [DÉPÔT] ou –référentiel [RÉPOSITOIRE] l'option définit le mot de passe pour un dépôt particulier.
- -S ou –état affiche les informations sur l'état du compte.
- -a ou –tous L'option affiche l'état de tous les utilisateurs. Il ne peut être utilisé qu'avec -S .
- -u ou –déverrouiller options déverrouille un mot de passe verrouillé et définit sa valeur précédente.
- -w [WARN_DAYS] ou –warndays [WARN_DAYS] L'option définit le nombre de jours pendant lesquels un avertissement s'affiche avant que le mot de passe ne doive être modifié.
- -x ou –maxdays [MAX_DAYS] L'option définit le nombre maximum de jours pendant lesquels un mot de passe reste valide. Après cela, le mot de passe doit être changé.
Option Passwd inactive
Exemple d'option Passwd Mindays
exemple d'option d'état passwd
La sortie est divisée en différents champs, comme indiqué ci-dessus. Le premier champ affiche le nom de l'utilisateur actuel.
Le deuxième champ indique si l'utilisateur a un mot de passe utilisable (P ), mot de passe verrouillé (L ) ou pas de mot de passe (NP ).
Le troisième champ affiche la dernière date de changement de mot de passe. Les quelques champs suivants indiquent respectivement l'âge minimum, l'âge maximum, la période d'avertissement et la période d'inactivité du mot de passe.
exemple d'options passwd warndays
passwd maxdays option exemple
Conclusion
La commande Linux passwd est une commande basique mais importante. Il peut être utilisé pour gérer les informations essentielles de l'utilisateur et l'authentification lors de la connexion au système et de l'exécution de diverses tâches dans le terminal, telles que l'installation de packages et l'accès à certains répertoires.