먼저 이렇게 말하겠습니다: 그렇습니다.아니요루트 액세스가 가능합니다.
최근에 비밀번호가 곧 만료될 것이라는 사실을 몰랐다가 비밀번호가 통과되었기 때문에 내 계정이 잠겼습니다. 시간이 다가오고 있음을 알 수 있도록 시간을 확인하고 표시하는 시작 스크립트에 확인 기능을 추가하고 싶습니다.
사용자의 비밀번호가 만료된 타임스탬프를 가져오는 명령이나 방법이 있습니까?
답변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
그것은 당신에게 도움이 될 수 있습니다