
먼저 다음과 같이 말하겠습니다. 나는 그렇습니다.아니다루트 액세스가 가능합니다.
최근에 비밀번호 만료가 가까워졌다가 만료되는 것을 몰랐기 때문에 내 계정이 잠겼습니다. 시간이 언제 다가오고 있는지 알 수 있도록 시간을 확인하고 표시하는 시작 스크립트에 확인 기능을 추가하고 싶습니다.
내 사용자 비밀번호가 만료될 때 타임스탬프를 가져오는 명령이나 방법이 있습니까?
답변1
유틸리티 에서 해당 정보를 얻을 수 있어야 합니다 chage
. 목록 모드에서 실행하기 위해 루트가 필요하지 않습니다.
passwd
참고: 이는 로컬 기반 인증 에만 작동할 가능성이 높습니다 . passwd
/ 파일 에 로그인 정보를 넣지 않는 인증 모드에서 작동하도록 만들 수 있는지 모르겠습니다 shadow
. 이러한 솔루션은 자체 도구를 제공하는 것 같지만 이에 대해 알지 못합니다.
$ chage -l test
Last password change : Apr 17, 2012
Password expires : Apr 27, 2012
Password inactive : never
Account expires : May 20, 2012
Minimum number of days between password change : 0
Maximum number of days between password change : 10
Number of days of warning before password expires : 7
로그인 시 비밀번호 만료 날짜를 표시하기 위해 빠른 awk와 함께 사용했습니다.
답변2
LDAP에서는 다음과 같은 작업을 수행합니다.
ldapsearch -x -Z uid=$1 pwdChangedTime | \
grep -vE '^#|^$' | grep pwdChangedTime | awk '{print $2}'
답변3
여러 가지 변경 작업을 수행할 수 chage
있으며 다음과 같이 로그인 세부 정보를 알 수 있습니다.
Usage: chage [options] [LOGIN]
Options:
-d, --lastday LAST_DAY set date of last password change to LAST_DAY
-E, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE
-h, --help display this help message and exit
-I, --inactive INACTIVE set password inactive after expiration
to INACTIVE
-l, --list show account aging information
-m, --mindays MIN_DAYS set minimum number of days before password
change to MIN_DAYS
-M, --maxdays MAX_DAYS set maximim number of days before password
change to MAX_DAYS
-W, --warndays WARN_DAYS set expiration warning days to WARN_DAYS
루트 액세스 권한이 있으면 비밀번호 만료 시간을 변경할 수 있습니다. 수정하세요.
vim /etc/login.defs
아래 값을 설정하십시오 ...
PASS_MAX_DAYS 30
PASS_MIN_DAYS 1
PASS_WARN_AGE 7
그것은 당신에게 도움이 될 수 있습니다