El requisito aquí es que el usuario no debe volver a usar las últimas 10 contraseñas usadas al establecer una nueva contraseña. Si el usuario intenta establecer una contraseña que se haya utilizado en las últimas 10 veces, obtendrá el siguiente error:
Changing password for user test. New UNIX password: Retype new UNIX password: Password has been already used. passwd: all authentication tokens updated successfully.
Esta es una medida de seguridad que garantiza que las contraseñas no sean pirateadas, ya que el usuario sigue configurando nuevas contraseñas cada vez que caduca. Siga los pasos a continuación para establecer esta restricción en las contraseñas.
1. Modifique el archivo /etc/pam.d/system-auth tal que incluye el módulo pam pam_pwhistory después de la primera aparición de la línea de requisito de contraseña:
# cat /etc/pam.d/system-auth #%PAM-1.0 # This file is auto-generated. # User changes will be destroyed the next time authconfig is run. auth required pam_env.so auth sufficient pam_unix.so nullok try_first_pass auth requisite pam_succeed_if.so uid >= 1000 quiet_success auth required pam_deny.so account required pam_unix.so account sufficient pam_localuser.so account sufficient pam_succeed_if.so uid < 1000 quiet account required pam_permit.so password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= password requisite pam_pwhistory.so debug use_authtok remember=10 retry=3 password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok password required pam_deny.so session optional pam_keyinit.so revoke session required pam_limits.so -session optional pam_systemd.so session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid session required pam_unix.so
2. Ahora intente cambiar la contraseña de un usuario.
# passwd test [Enter already used password]
Ahora verá que el sistema arrojará un error diciendo que la contraseña ya se usó en el pasado.
Changing password for user test. New UNIX password: Retype new UNIX password: Password has been already used. passwd: all authentication tokens updated successfully.