GNU/Linux >> Tutoriels Linux >  >> Linux

7 exemples pour gérer l'expiration et le vieillissement du mot de passe Linux à l'aide de chage


Photo courtoisie :mattblaze

Les meilleures pratiques recommandent aux utilisateurs de continuer à modifier les mots de passe à intervalles réguliers. Mais généralement, les développeurs et autres utilisateurs du système Linux ne changeront pas le mot de passe à moins qu'ils ne soient obligés de changer leur mot de passe.
 
Il est de la responsabilité des administrateurs système de trouver un moyen de forcer les développeurs à changer leur mot de passe. Forcer les utilisateurs à changer leur mot de passe avec un pistolet sur la tête n'est pas une option !. Alors que la plupart des administrateurs système soucieux de la sécurité peuvent même être tentés de le faire.
 
Dans cet article, voyons comment vous pouvez utiliser la commande chage de Linux pour effectuer plusieurs activités pratiques de vieillissement de mot de passe, y compris comment forcer les utilisateurs à changer leur mot de passe.

Sur debian, vous pouvez installer chage en exécutant la commande suivante :

# apt-get install chage

 
Remarque : Il est très facile de faire une faute de frappe sur cette commande. Au lieu de chage, vous pouvez finir par le taper comme changement. N'oubliez pas que chage signifie "changer d'âge". c'est-à-dire que l'abréviation de la commande chage est similaire à chmod, chown etc.,

1. Lister le mot de passe et ses détails associés pour un utilisateur

Comme indiqué ci-dessous, n'importe quel utilisateur peut exécuter la commande chage pour lui-même d'identifier quand son mot de passe est sur le point d'expirer.

Syntax: chage –-list username (or) chage -l username

$ chage --list dhinesh
Last password change                                    : Apr 01, 2009
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

 
Si l'utilisateur dhinesh essaie d'exécuter la même commande pour l'utilisateur ramesh, il recevra le message d'autorisation refusée suivant.

$ chage --list ramesh
chage: permission denied

 
Remarque : Cependant, un utilisateur root peut exécuter la commande chage pour n'importe quel compte utilisateur.
 
Lorsque l'utilisateur dhinesh change son mot de passe le 23 avril 2009, il mettra à jour la valeur "Dernier changement de mot de passe" comme indiqué ci-dessous.
 
Veuillez vous référer à notre article précédent :Meilleures pratiques et guide ultime pour créer un mot de passe super fort, qui vous aidera à suivre les meilleures pratiques lors de la modification du mot de passe de votre compte.

$ date
Thu Apr 23 00:15:20 PDT 2009

$ passwd dhinesh
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

$ chage --list dhinesh
Last password change                                    : Apr 23, 2009
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

2. Définir la date d'expiration du mot de passe pour un utilisateur à l'aide de l'option de modification -M

L'utilisateur racine (administrateurs système) peut définir la date d'expiration du mot de passe pour n'importe quel utilisateur. Dans l'exemple suivant, le mot de passe dhinesh de l'utilisateur est défini pour expirer 10 jours après le dernier changement de mot de passe.
 
Veuillez noter que l'option -M mettra à jour les entrées "Mot de passe expiré" et "Nombre maximum de jours entre les changements de mot de passe", comme indiqué ci-dessous.

Syntax: # chage -M number-of-days username

# chage -M 10 dhinesh

# chage --list dhinesh
Last password change                                    : Apr 23, 2009
Password expires                                        : May 03, 2009
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 10
Number of days of warning before password expires       : 7

3. Message d'avertissement d'expiration du mot de passe lors de la connexion

Par défaut, le nombre de jours d'avertissement avant l'expiration du mot de passe est défini sur 7. Ainsi, dans l'exemple ci-dessus, lorsque l'utilisateur dhinesh essaie de se connecter le 30 avril 2009, il reçoit le message suivant.

$ ssh dhinesh@testingserver
dhinesh@testingserver's password:
Warning: your password will expire in 3 days

4. L'utilisateur est obligé de changer son mot de passe après la date d'expiration

Si la date d'expiration du mot de passe est atteinte et que l'utilisateur ne change pas son mot de passe, le système forcera l'utilisateur à changer le mot de passe avant la connexion, comme indiqué ci-dessous.

$ ssh dhinesh@testingserver
dhinesh@testingserver's password:

You are required to change your password immediately (password aged)
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for dhinesh
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:

5. Définir la date d'expiration du compte pour un utilisateur

Vous pouvez également utiliser la commande chage pour définir la date d'expiration du compte comme indiqué ci-dessous en utilisant l'option -E. La date indiquée ci-dessous est au format « AAAA-MM-JJ ». Cela mettra à jour la valeur "Le compte expire" comme indiqué ci-dessous.

# chage -E "2009-05-31" dhinesh

# chage -l dhinesh
Last password change                                    : Apr 23, 2009
Password expires                                        : May 03, 2009
Password inactive                                       : never
Account expires                                         : May 31, 2009
Minimum number of days between password change          : 0
Maximum number of days between password change          : 10
Number of days of warning before password expires       : 7

6. Forcer le verrouillage du compte utilisateur après X jours d'inactivité

Généralement, si le mot de passe a expiré, les utilisateurs sont obligés de le changer lors de leur prochaine connexion. Vous pouvez également définir une condition supplémentaire, où après l'expiration du mot de passe, si l'utilisateur n'a jamais essayé de se connecter pendant 10 jours, vous pouvez verrouiller automatiquement son compte en utilisant l'option -I comme indiqué ci-dessous. Dans cet exemple, la date « Mot de passe inactif » est définie sur 10 jours à compter de la valeur « Mot de passe expire ».
 
Une fois qu'un compte est verrouillé, seuls les administrateurs système pourront le déverrouiller.

# chage -I 10 dhinesh

# chage -l dhinesh
Last password change                                    : Apr 23, 2009
Password expires                                        : May 03, 2009
Password inactive                                       : May 13, 2009
Account expires                                         : May 31, 2009
Minimum number of days between password change          : 0
Maximum number of days between password change          : 10
Number of days of warning before password expires       : 7

7. Comment désactiver le vieillissement du mot de passe pour un compte utilisateur

Pour désactiver l'expiration du mot de passe d'un compte utilisateur, définissez les éléments suivants :

  • -m 0 définira le nombre minimum de jours entre le changement de mot de passe à 0
  • -M 99999 fixera le nombre maximum de jours entre le changement de mot de passe à 99999
  • -I -1 (chiffre moins un) définira le "Mot de passe inactif" sur jamais
  • -E -1 (chiffre moins un) définira "Le compte expire" sur jamais.
# chage -m 0 -M 99999 -I -1 -E -1 dhinesh

# chage --list dhinesh
Last password change                                    : Apr 23, 2009
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

 
Cet article a été écrit par Dhineshkumar Manikannan. Il travaille chez bk Systems (p) Ltd et souhaite contribuer à l'open source. The Geek Stuff accueille vos conseils et articles invités


Linux
  1. Utilisation de la commande timedatectl pour modifier l'heure et la date sur le système Linux RHEL7

  2. Commande Linux Cat :utilisation et exemples

  3. 12 exemples de commandes Linux Chown pour changer de propriétaire et de groupe

  4. 15 Exemples de commandes Linux Split and Join pour gérer des fichiers volumineux

  5. Comment combiner Ping et Traceroute sous Linux à l'aide d'exemples de commandes MTR

10 exemples de commandes passwd sous Linux

Comment changer le mot de passe utilisateur sous Linux

Tutoriel de commande Linux chage pour les débutants (6 exemples)

Commande Linux Changement pour définir le vieillissement du mot de passe pour l'utilisateur

Comment créer et gérer des partitions Linux à l'aide de Parted

Exemples de commandes chown sous Linux