마지막 비밀번호가 사용되는 것을 방지하고 비밀번호의 복잡성을 유지하고 싶습니다.
하지만 pam_pwquality.so와 pam_pwhistory.so를 모두 사용하면 제대로 작동하지 않습니다.
예를 들어, 최소 길이를 8로 설정하고 system-auth 파일의 마지막 두 비밀번호를 비활성화했습니다.
password requisite pam_pwquality.so local_users_only retry=3 minlen=8
password requisite pam_pwhistory.so remember=2 retry=3
복잡도와 일치하는 마지막 비밀번호를 입력하면 pwhistory가 나를 차단하지만 그 이후에는 복잡하지 않게 비밀번호를 변경할 수 있습니다. -> 두 번째 모듈에 검사가 통과되면 첫 번째 모듈이 무효화되나요?
pwquality와 pwhistory가 역전되는 경우에도 상황은 비슷합니다.
password requisite pam_pwhistory.so remember=2 retry=3
password requisite pam_pwquality.so local_users_only retry=3 minlen=8
작동 방식은 다음과 같습니다.
$passwd
Enter the last password -> failed by pwhistory module
Enter short password -> failed by pwquality module
Enter the last password -> success regardless of pwhistory module
복잡성과 마지막 비밀번호 조건을 모두 확인할 수는 없나요?
답변1
이 매개변수는 다른 비밀번호 변경 모듈과 함께 사용할 때 필요하다고 생각합니다 use_authtok
(예: 원래 선택한 비밀번호 변경).pwhistory
pwquality
password requisite pam_pwquality.so local_users_only retry=3 minlen=8
password requisite pam_pwhistory.so remember=2 retry=3 use_authtok
pwhistory
다음을 사용하여 모듈의 매뉴얼 페이지를 볼 수 있습니다.
man pam_pwhistory
매뉴얼 페이지에서 발췌:
_authtok 사용
비밀번호가 변경되면 모듈이 이전에 스택된 비밀번호 모듈에서 제공한 새 비밀번호를 사용하도록 강제합니다(이는 아래 문서화된 pam_cracklib 모듈의 스택 예제에서 사용됩니다).