pam_lastlog.so
[
debug
] [
silent
] [
never
] [
nodate
] [
nohost
] [
noterm
] [
nowtmp
] [
noupdate
] [
showfailed
] [
inactive=<days>
] [
unlimited
]
pam_lastlog는 사용자의 최근 로그인에 대한 정보를 표시하는
PAM 모듈이다. 추가로 /var/log/lastlog
파일을 유지한다.
일부 응용에서는 이 기능을 자체적으로 수행할 수 있다. 그 경우에는 이 모듈이 필요치 않다.
/etc/login.defs
의
LASTLOG_UID_MAX
옵션을 확인해서
사용자 ID가 그 값보다 크면 최근 로그인 기록을 갱신 및 표시하지 않는다.
그 옵션이 없거나 값이 유효하지 않으면 사용자 ID 제한을 두지 않는다.
auth나 account 단계에서 모듈이 호출되면 충분히 최근에 이용하지
않은 계정의 로그인이 불허된다. root가 막히는 일이 없도록 하기 위해
root 계정에는 검사를 수행하지 않는다. UID가
LASTLOG_UID_MAX
값보다 큰 사용자에도
수행하지 않는다.
debug
디버그 정보 찍기.
silent
사용자에게 이전 로그인에 대해 알려 주지 않기.
/var/log/lastlog
파일 갱신만 한다.
틀린 로그인 시도 표시에는 영향을 주지 않는다.
never
/var/log/lastlog
파일에
사용자에 대한 이전 항목이 없으면 환영 메시지에
사용자가 한 번도 로그인한 적이 없다고 표시하기.
nodate
최근 로그인 날짜를 표시하지 않기.
noterm
최근 로그인이 시도된 터미널 이름을 표시하지 않기.
nohost
최근 로그인이 어느 호스트로부터 시도됐는지 표시하지 않기.
nowtmp
wtmp 항목 갱신하지 않기.
noupdate
어떤 파일도 갱신하지 않기.
showfailed
btmp에서 얻은 로그인 시도 실패 횟수와 최근 실패한
시도 날짜 표시하기. nodate
지정 시 날짜를 표시하지 않는다.
inactive=<days>
이 옵션은 auth 내지 account 단계용이다. 마지막 로그인 후 지정한 수의 날이 지났으면 모듈에서 사용자를 차단하게 된다. 기본값은 90이다.
unlimited
fsize 제한이 있는 경우에 이 옵션으로 무시할 수 있다. UID 값이 커서 lastlog 파일이 커지게 되는 시스템에서 기록에 실패하는 걸 방지한다.
auth
및 account
모듈 타입에서
충분히 최근에 로그인하지 않은 사용자를 차단하는 게 가능하다.
최근 로그인에 대한 정보 표시 및/또는 lastlog와 wtmp 파일 갱신을 위해
session
모듈 타입을 제공한다.
성공적으로 동작했음.
서비스 모듈 내부 오류.
알 수 없는 사용자.
활동이 없었기 때문에 auth 내지 account 단계에서 사용자가 차단됐다.
auth 내지 account 단계에서 lastlog 파일을 읽는 중 오류가 발생해서 사용자의 활동이 없었는지를 판단할 수 없다.
/etc/pam.d/login
에 다음 행을 추가해서
사용자의 최근 로그인 시간을 표시할 수 있다.
session required pam_lastlog.so nowtmp
지난 50일 동안 로그인하지 않은 사용자를 거부하려면 다음 행을 쓸 수 있다.
auth required pam_lastlog.so inactive=50