web-dev-qa-db-fra.com

Comment empêcher les utilisateurs de remplacer leur mot de passe par l'un des derniers mots de passe X?

J'ai un système Ubuntu GNOME 15.10 avec GNOME 3.18 que je voudrais configurer pour que les utilisateurs qui l'utilisent ne puissent pas définir un nouveau mot de passe comme l'un des mots de passe X précédents, comment peut-on y parvenir?

Lorsque je modifie mon mot de passe, s'il est trop similaire à mon dernier mot de passe, mon système ne me permet pas de le changer pour ce mot de passe, il serait bon que la réponse indique également comment l'étendre de sorte que le nouveau mot de passe ne puisse pas non plus être utilisé. trop similaire aux X mots de passe enregistrés précédemment.

Remarque: L’historique des X derniers mots de passe ne doit pas être stocké de manière non sécurisée et non sécurisée. En fait, ils devraient probablement être stockés de la même manière ou de manière similaire à la manière dont le mot de passe actuel est stocké ( comme un hash salé).

J'ai utilisé X pour représenter le nombre de mots de passe (cela peut être n'importe quelle valeur) parce que je veux pouvoir modifier facilement le nombre de mots de passe stockés qui ne peuvent pas être utilisés, ainsi que pour que d'autres puissent facilement prendre la réponse. et l'utiliser comme ils le souhaitent plutôt que d'avoir une réponse qui tourne autour d'une valeur très définie pour X.

Mise à jour:

Comme demandé, voici le contenu de mon fichier (excluant les commentaires en haut) _/etc/pam.d/common-password_:

_# here are the per-package modules (the "Primary" block)
password        [success=1 default=ignore]      pam_unix.so obscure sha512
# here's the fallback if no module succeeds
password        requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
password        required                        pam_permit.so
# and here are more per-package modules (the "Additional" block)
password        optional        pam_gnome_keyring.so
# end of pam-auth-update config
_
9
user364819

Vous pouvez configurer PAM pour le faire à votre place. Il suffit d’ouvrir /etc/pam.d/common-password et d’ajouter use_authtok à la première ligne password (celle qui appelle le module pam_unix) afin qu’elle ressemble à ceci:

password    [success=1 default=ignore]  pam_unix.so obscure sha512 use_authtok

Ajoutez maintenant cette ligne au-dessus de la ligne précédemment modifiée:

password    required    pam_pwhistory.so  remember=X

X est le nombre de mots de passe précédents par rapport auxquels vous souhaitez rechercher un mot de passe répétitif.

Ici les mots de passe X précédents seront stockés sous forme hachée à l'emplacement /etc/security/opasswd

Vous devez donc créer le fichier si et seulement si il n’existe pas et lui attribuer l’autorisation 600 (-rw-------):

Sudo touch /etc/security/opasswd
Sudo chmod 600 /etc/security/opasswd
16
daltonfury42