6.32. pam_timestamp - 인증 시도 성공 기록을 이용한 인증

pam_timestamp.so [ timestampdir=directory ] [ timestamp_timeout=number ] [ verbose ] [ debug ]

6.32.1. 설명

한마디로 pam_timestamp는 성공한 인증 시도를 일정 시간 기억해 둬서 최근의 성공한 시도를 인증의 근거로 이용할 수 있게 해 준다. sudo에 있는 것과 비슷한 메커니즘이다.

응용에서 pam_timestamp를 써서 세션을 열면 timestampdir 디렉터리에 사용자를 위한 타임스탬프 파일이 생긴다. 이후 응용에서 사용자를 인증하려 할 때 pam_timestamp에서는 충분히 최신인 타임스탬프 파일을 인증 성공의 근거로 삼게 된다.

따로 지정하지 않으면 /etc/login.defsHMAC_CRYPTO_ALGO 변수에서 암호화 해시 방법을 가져온다.

6.32.2. 옵션

timestampdir=directory

pam_timestamp에서 타임스탬프 파일들을 만들 디렉터리 지정하기.

timestamp_timeout=number

pam_timestamp에서 마지막 변경 시간 후 얼마 동안 (초 단위) 타임스탬프가 유효한 걸로 볼 것인지. 기본은 300초.

verbose

접근 인가 시 사용자에게 알려 주기.

debug

syslog(3)로 보내는 디버깅 메시지 켜기.

6.32.3. 제공하는 모듈 종류

authsession 모듈 타입을 제공한다.

6.32.4. 반환 값

PAM_AUTH_ERR

모듈에서 사용자 이름을 얻을 수 없거나 유효한 타임스탬프 파일을 찾지 못했다.

PAM_SUCCESS

성공적으로 동작했음.

PAM_SESSION_ERR

타임스탬프 파일을 생성 내지 갱신할 수 없다.

6.32.5. 주의 사항

어떤 프로그램을 실행할 때 패스워드 입력 요구가 항상 있지는 않으면 사용자가 혼란스러워 할 수 있다. 어떤 사용자들은 요구가 없다는 걸 알아채기도 전에 반사적으로 입력을 시작한다.

6.32.6. 예시

auth sufficient pam_timestamp.so verbose
auth required   pam_unix.so

session required pam_unix.so
session optional pam_timestamp.so
    

6.32.7. 파일

/var/run/pam_timestamp/...

타임스탬프 파일 및 디렉터리

6.32.8. 작성자

Nalin Dahyabhai가 pam_timestamp를 작성했다.