Linux

[CentOS] chage 명령어

게킴의 블로그 2022. 12. 16. 10:13

시스템 보안을 위해 사용자 패스워드 만기 설정을 제어하는 명령어다.

chage 기본 문법 

# 기본 문법
chage -[옵션] [계정명]

# 옵션 
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 maximum number of days before password
                                change to MAX_DAYS
  -R, --root CHROOT_DIR         directory to chroot into
  -W, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS

 

내가 주로 사용했던 옵션이다. 

-l : 정보 확인 (list)

-d : 마지막으로 암호를 바꾼 날 수정 

-m : 암호를 바꿀 수 있는 최소 날 수 수정

-M : 암호를 바꿔야 하는 최대 날 수 수정

-W : 암호 만료 예고를 하는 날 수

 

chage 실습

chage -d 2022-10-31 root 
chage -M 90 root 
chage -m 1 root 
chage -W 15

chage -l root 
마지막으로 암호를 바꾼 날                                       :10월 31, 2022
암호 만료                                       : 1월 29, 2023
암호가 비활성화 기간                                    :안함
계정 만료                                               :안함
암호를 바꿀 수 있는 최소 날 수          : 1
암호를 바꿔야 하는 최대 날 수           : 90
암호 만료 예고를 하는 날 수             : 7

 


그런데 이렇게 user 생성시마다 chage 명령어를 입력하는 건 너무 번거롭기 때문에

/etc/login.defs 파일에 사내 보안 규칙에 맞는 설정을 아예 고정시킬 수 있다. 

이렇게 하면 새 유저를 생성할 경우 아래 규칙이 적용되어 생성된다. 

vi /etc/login.defs

PASS_MAX_DAYS   90	# 암호를 바꿔야 하는 최대 날 수
PASS_MIN_DAYS   1	# 암호를 바꿔야 하는 최소 날 수
PASS_MIN_LEN    9	# 패스워드 최소길이
PASS_WARN_AGE   15	# 암호 만료 예고를 하는 날 수