Information
The remember=n argument saves the last n passwords for each user in /etc/security/opasswd in order to force password change history and keep the user from alternating between the same password too frequently. The MD5 password hash algorithm is used for storing the old passwords. Instead of this option the pam_pwhistory module should be used. The pam_pwhistory module saves the last n passwords for each user in /etc/security/opasswd using the password hash algorithm set on the pam_unix module. This allows for the yescrypt or sha512 hash algorithm to be used.
The remember=n argument should be removed to ensure a strong password hashing algorithm is being used. A stronger hash provides additional protection to the system by increasing the level of effort needed for an attacker to successfully determine local user's old passwords stored in /etc/security/opasswd
Solution
Run the following command:
# grep -PH -- '^h*([^#
r]+h+)?pam_unix.soh+([^#
r]+h+)?rememberb' /usr/share/pam-configs/*
Edit any files returned and remove the remember=_<N>_ argument for the pam_unix lines
Example output:
[success=end default=ignore] pam_unix.so obscure use_authtok try_first_pass yescrypt remember=5 # **<- remove remember=<N>**
[success=end default=ignore] pam_unix.so obscure yescrypt remember=5 # **<- remove remember=<N>**
Run the following command to update the files in the /etc/pam.d/ directory:
# pam-auth-update --enable <EDITED_PROFILE_NAME>
Example:
# pam-auth-update --enable unix
Note: If custom files are being used, the corresponding files in /etc/pam.d/ would need to be edited directly, and the pam-auth-update --enable <EDITED_PROFILE_NAME> command skipped