passwd options
passwd는 unix나 unix계열의 운영체제에서 사용자의 암호를 변경하는데 사용하는 명령어 이다. 사용자가 입력한 암호는 보안상의 이유로 입력한 값을 그대로 저장하지 않고 해시값으로만 저장이된다.
root사용자는 시스템에 있는 모든 사용자의 암호를 변경할 수 있지만 일반 사용자는 본인 계정의 암호 변경만 가능하다. 단, 관리자 권한을 가진 사용자는 sudo
명령어를 통해 다른 사용자의 권한을 변경할 수 있다.
Syntax
passwd [options] [username]
Options
-d, –delete
사용자 계정의 암호를 삭제하고 암호가 없는 상태로 만든다. 암호가 없는 상태가 되면 사용자 계정은 암호 없이 로그인 가능하다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -d [username]
example
user1
사용자의 암호를 삭제한다.
$ passwd -d user1
-e, –expire
사용자 계정의 암호를 즉시 만료한다. 계정이 만료된다면 해당 계정의 사용자는 접속 시 암호를 변경하여야 한다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -e [username]
example
user1
의 암호를 즉시 만료상태로 설정한다.
$ passwd -e user1
-i, -–inactive
사용자 계정의 암호 만료일을 설정한다. 입력한 정수값 이후에 계정은 만료상태가 되고 해당 계정의 사용자는 접속 시 암호를 변경하여야 한다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -i [INACTIVE_DAYS] [username]
example
user1
의 암호를 3일 후에 만료상태로 설정한다.
$ passwd -i 3 user1
-k, -–keep-tokens
사용자 계정의 암호가 만료된 이후의 암호를 설정한다. 만약 현재 암호 만료가되지 않은 경우 현재 암호로 인증되고 암호가 만료가 된 경우 입력했던 새로운 암호로 인증된다. 만약 사용자의 만료기간이 없는 경우 암호는 새롭게 입력된 값으로 변경된다.
$ passwd -k [username]
example
user1
의 암호 만료일 이후의 암호를 변경한다.
$ passwd -k user1
$ New password:
$ Retry new password:
-l, -–lock
사용자 계정의 암호를 잠근다. 계정을 잠그는 경우 사용자는 암호를 입력하여 로그인을 할 수 없으며, ssh key와 같은 다른 인증방법을 통해 계정에 로그인 할 수 있다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -l [username]
example
user1
의 암호를 잠근다.
$ passwd -l user1
-n, –-mindays
사용자 계정의 암호변경 가능 최소일을 설정한다. 해당 옵션은 사용자가 설정한 기간내에 암호를 변경할 수 없도록 설정한다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -n [MIN_DAYS] [username]
example
user1
의 암호변경 최소일을 90일로 설정한다.
$ passwd -n 90 user1
-S, –status
사용자 계정의 상태 정보를 표시한다. 정보는 아래와 같이 총 7개의 항목으로 구성되어 있다. root
권한을 가진 계정만 사용 가능하다.
- 사용자 계정명
- 암호 상태
- LK: 잠금 상태
- NP: 암호가 없는 상태
- PS: 사용가능한 암호가 설정되어 있는 상태
- 마지막 암호 변경일
- 최소 암호 사용 기간
- 최대 암호 사용 기간
- 암호 만료 경고 기한
- 암호 만료 기간
$ passwd -S [username]
example
user1
의 계정 상태 정보를 표시한다.
user1
의 사용자는 사용 가능한 암호가 설정되어 있는 상태
이며 마지막 암호 변경일은 2020-01-19
이다. 최소 암호 사용 기간은 0일
이며 최대 암호 사용 기간은 99999(무제한)일
이다. 암호 만료 경고는 만료일로부터 7일
이전에 사용자에게 알리며 만료 기간은 -1(없음)일
이다.
$ passwd -S user1
user1 PS 2020-01-19 0 99999 7 -1 (Password set, SHA512 crypt.)
-u, –unlock
사용자 계정의 잠금상태를 해제한다. root
권한을 가진 계정만 사용 가능하다.
$ passwd -u [username]
example
user1
의 잠금상태를 해제한다.
$ passwd -u user1
-w, –warndays
사용자 계정의 암호가 만료되기 전 만료경고를 알려주는 기한을 설정한다. 사용자는 설정된 기한 내에 접속할 경우 암호 만료 경고 문구를 수신한다.
$ passwd -w [WARN_DAYS] [username]
example
user1
의 경고 알림 기한을 7일로 설정한다.
$ passwd -w 7 user1
-x, –maxdays
사용자 계정의 암호의 최대 사용 기간을 설정한다. 최대 사용기간이 지나면 사용자는 암호를 즉시 변경하여야 한다. 기간을 99999
로 설정할 경우 사용 기간은 무제한을 의미한다.
$ passwd -x [MAX_DAYS] [username]
example
user1
의 최대 암호 사용 기간을 100일로 설정한다.
$ passwd -x 100 user1
https://en.wikipedia.org/wiki/Passwd
https://www.geeksforgeeks.org/passwd-command-in-linux-with-examples/