Modifier l'expiration du mot de passe et l'appartenance aux groupes avec chage et usermod
Dans cette étape, vous allez gérer des propriétés utilisateur plus avancées. Vous apprendrez à appliquer des politiques de sécurité des mots de passe à l'aide de chage pour contrôler l'expiration, et à gérer les appartenances aux groupes d'un utilisateur avec usermod pour contrôler ses permissions et droits d'accès.
Tout d'abord, examinons les informations d'expiration du mot de passe pour le compte student1. La commande chage (change age) avec le drapeau -l (list) affiche ces détails.
sudo chage -l student1
La sortie affichera les paramètres par défaut du compte. Les dates correspondront au moment où vous avez créé l'utilisateur.
Last password change : Dec 08, 2024
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
Pour la sécurité, il est recommandé d'exiger que les utilisateurs changent périodiquement leur mot de passe. Définissons une politique où le mot de passe doit être changé tous les 90 jours (-M 90), ne peut être changé qu'une fois tous les 7 jours (-m 7), et l'utilisateur reçoit un avertissement 14 jours avant l'expiration (-W 14).
sudo chage -M 90 -m 7 -W 14 student1
Maintenant, visualisez à nouveau les paramètres pour confirmer vos modifications :
sudo chage -l student1
La sortie reflétera la nouvelle politique :
Last password change : Dec 08, 2024
Password expires : Mar 08, 2025
Password inactive : never
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 90
Number of days of warning before password expires : 14
Ensuite, modifions les appartenances aux groupes. Un utilisateur appartient à un groupe principal et peut appartenir à plusieurs groupes secondaires (ou supplémentaires). Vous pouvez voir les groupes d'un utilisateur avec la commande id.
id student1
uid=5001(student1) gid=5001(student1) groups=5001(student1)
Cela montre que le groupe principal de student1 est student1 (gid=5001) et qu'il n'appartient encore à aucun groupe secondaire.
Créons un nouveau groupe appelé developers et ajoutons-y student1. D'abord, créez le groupe :
sudo groupadd developers
Maintenant, ajoutez student1 à ce nouveau groupe en utilisant usermod. Les drapeaux -aG sont cruciaux : -G spécifie les groupes secondaires, et -a (append) ajoute l'utilisateur au groupe sans le retirer de ses autres groupes.
sudo usermod -aG developers student1
Vérifiez à nouveau les groupes de l'utilisateur :
id student1
La sortie inclut désormais le groupe developers :
uid=5001(student1) gid=5001(student1) groups=5001(student1),1002(developers)
Que se passe-t-il si vous oubliez le drapeau -a ? Créons un autre groupe, testers, et ajoutons student1 en utilisant uniquement -G.
sudo groupadd testers
sudo usermod -G testers student1
Vérifiez les groupes une fois de plus :
id student1
uid=5001(student1) gid=5001(student1) groups=5001(student1),1003(testers)
Remarquez que student1 ne fait plus partie du groupe developers. L'utilisation de usermod -G sans -a remplace tous les groupes secondaires existants par la nouvelle liste. Pour que l'utilisateur soit dans les deux groupes, vous devez soit lister tous les groupes (-G developers,testers), soit utiliser le drapeau d'ajout. Rectifions cela en rajoutant correctement student1 au groupe developers.
sudo usermod -aG developers student1
Vérifiez l'état final. L'utilisateur doit maintenant être membre des deux groupes.
id student1
uid=5001(student1) gid=5001(student1) groups=5001(student1),1003(testers),1002(developers)