Você pode configurar o PAM para fazer isso por você. Basta abrir /etc/pam.d/common-password
e anexar use_authtok
à primeira linha password
(aquela que chama o módulo pam_unix) para que pareça com isso:
password [success=1 default=ignore] pam_unix.so obscure sha512 use_authtok
Agora adicione esta linha acima da linha modificada anteriormente:
password required pam_pwhistory.so remember=X
em que X
é o número de senhas anteriores com as quais você deseja verificar se há uma senha repetida.
Aqui, as senhas X
anteriores serão armazenadas em formato de hash no local /etc/security/opasswd
Então você precisa criar o arquivo se e somente se ele não existir e atribuir a permissão 600 ( -rw-------
):
sudo touch /etc/security/opasswd
sudo chmod 600 /etc/security/opasswd