2023년 4월 14일 작성
chage -E -1 -I 0 -m 0 -M 90 {계정명}
-E (지정한 계정의 만기일 설정) : -1 이면 따로 설정하지 않음 만료 값 지정하지 않거나 만료일 해제할 때 씀.
-I (패스워드 만료시 비활성화 상태로 전환되기까지의 유예기간을 지정하는 옵션) : -I 날짜수 / -1로 설정하면 비활성화 되지 않음. 유예기간 사용 안함. 0으로 설정하면 바아로 락걸림
-m (패스워드 최소 의무 사용일 수를 지정하는 옵션, 최소 며칠이 경과해야 다른 패스워드로 변경할 수 있는지 설정) : 0이면 패스워드 사용해야 하는 최소 조건 없음
-E 옵션으로 지정한 계정 만료일은 비밀번호 만료와는 관계가 없다.
공공 개인 계정 생성시 -I 옵션의 날짜가 0으로 설정되어 있기 때문에 바로 비활성화 되지 않도록 -1로 설정 필요.
각 항목들이 설정된 것은 /etc/shadow에서 확인 가능
{계정명}:암호해시값:19453:0:90:10:0::
- 계정명
- 암호필드 → hash 함수로 저장
- 패스워드 최종 수정일 (ex. 19453 ⇒ 최종 암호 변경일은 [1970-1-1] 이후로 19453일)
- 패스워드 최소 사용일 (ex. 0 ⇒ 암호를 변경 후 0일 간의 변경하지 못하고 유지) 설정 안되어 있는 거임
- 패스워드 최대 사용일 (ex. 90 ⇒ 암호를 변경하지 않고 사용가능한 일자)
- 패스워드 만료 경고일 (ex. 10 ⇒ 암호 만료 10일 전부터 경고)
- 패스워드 만료후 유예기간 (ex. 0 ⇒ 계정 종료일 이후에는 로그인 불가) → -1로 변경 필요
- 계정 만료일 (ex. 17556 ⇒ 계정 만료일인 [2018-1-25]일은 [1970-1-1] 이후로 17556일) 0으로 설정되어 있으므로 계정 만료가 설정되어 있지 않음을 의미
eden 계정 목록 받아와서 반영, 공용 계정 중에도 비활성화 설정 되어 있는 것들 있어서 수정
- hosts: all
become: yes
gather_facts: true
serial: 1
tasks:
- name: check eden account list
shell: cat /etc/group | grep eden | cut -d ':' -f4
register: account_list
- name: check account list
shell: cat /etc/group | grep {{item}} | cut -d ':' -f1
with_items:
- "계정1:"
- "계정2:"
- "계정3:"
- "계정4:"
register: acc_list
- name: account list
set_fact:
user_list: "{{account_list.stdout.replace('\n',',').split(',')}}"
- name: chage -I 0 -> -1
shell: chage -I -1 {{item.stdout}}
with_items: "{{acc_list.results}}"
when: item.stdout != ""
- name: chage -I 0 -> -1
shell: chage -I -1 {{item}}
with_items: ""{{user_list}}"
when: item != ""
'Linux' 카테고리의 다른 글
[리눅스] GID 변경시 발생할 수 있는 문제 (0) | 2025.03.05 |
---|---|
리눅스 Run level 이란? (0) | 2023.01.07 |
Repository 관련 정리 (0) | 2022.10.21 |
Out of memory 되었을 때 확인해봐야 할 것들.. (0) | 2022.10.11 |
리눅스 데몬(서비스) 리스트 조회하기 (0) | 2022.09.28 |