리눅스_사용자 계정 및 그룹 관리_01_/etc/passwd, /etc/shadow

2022. 3. 22. 00:09·IT/Linux
반응형

  1. /etc/passwd

보안이나 리눅스를 배우신다면 /etc/passwd에 대한 이해는 필수입니다. 정보 보안기사의 단골 손님이기도 합니다.

/etc/passwd에는 시스템에 등록된 사용자의 정보들이 담겨있는 파일입니다. 이 파일을 이용해서 사용자의 계정과 인증을 관리하게 됩니다.

원본 root:x:0:0:root:/root:/bin/bash

root ID
:x Password
:0 UID
:0 GID
:root Comment
:/root 홈디렉토리
:/bin/bash LoginShell

 

# useradd

사용자를 추가합니다. 기존 설정을 변경하는 usermod와 옵션이 완전히 동일합니다.

-u UID를 지정합니다. 기본적으로 1000번부터 시작하며 마지막 번호 뒤로 자동 생성 됩니다.
-g GID를 지정합니다. 기본그룹의 ID, 존재하지 않는 그룹을 지정하면 계정 생성이 되지 않습니다.
지정하지 않는다면 UID와 같은 GID가 설정됩니다.
-G 추가 그룹을 설정합니다. 하나의 사용자는 여러 그룹의 속할 수 있습니다.
-c 코멘트를 설정합니다. 주로 부서를 설명할 때 많이 사용합니다.
-d 홈 디렉토리 위치를 지정합니다. 반드시 상위 디렉토리가 존재해야하며, 존재하는 홈디렉토리 이동시에는 -m 옵션을 사용해야 합니다.
-m 옵션을 사용해야만 홈 디렉토리 내의 파일이나 디렉토리도 같이 이전됩니다.
-s Login Shell입니다.
/bin/false login 불가 이유 설명 없음
/sbin/nologin 사용할 수 없는 계정이라는 메세지 출력함.

 

<예제1>
g 계정을 생성하면서 uid 3000번 gid 3000번 추가그룹 root, 코멘트 tech, 홈디렉토리 /home_2/.g, login shell은 sh로 지정하라

`mkdir /home_2`를 통해 명령어를 한번에 처리한 모습

<예제2>
h 계정을 생성하면서 uid 4000번 gid 3000번 추가그룹 1000, 코멘트 sales, 홈디렉토리 /home_3/h, Login은 불허. 단, 이유는 출력하라.

 

 

# userdel

사용자 삭제할때는 userdel -r 옵션을 반드시 사용하도록 합니다. 관련된 디렉토리까지 삭제되기 때문입니다.

-r 옵션 사용 안하면 디렉토리를 남기고 계정이 삭제된 것을 볼 수 있습니다. 남은 디렉토리는 나중에 문제가 생길 수 있으니 -r 옵션 사용을 익히시는게 좋습니다.

 

 

  2. /etc /group

그룹ID:Password:GID:그룹에 속한 사용자

 

 

  3. /etc /shadow

ID:암호화Password:마지막으로패스워드변경날짜:패스워드최소사용일:패스워드최대사용일:만료일전경고메세지출력일:유예기간:계정의만료일:사용안함

원본

a:$6$N/QibYE4$E4cFJIjTR767/nreD3TugSi1xt/lNIxbKWOASJk99.hwkIZNQy3c517lgRG/vxOsUTH53Uxo/PZSKfjKsCTeQ1:19072:0:99999:7:::

 

a ID
:$6$N~~ 암호화 된 패스워드
:19072 마지막으로 패스워드 변경한 날짜 (기준일 1970년 1월 1일)
:0 패스워드 최소 사용일 (이 기간 동안 패스워드 변경 불가)
:99999 패스워드 최대 사용일 (이 기간 이후에는 반드시 패스워드 변경)
:7 경고메세지 출력일 (패스워드 만료일 몇일 전부터 경고 메시지 출력)
: 유예기간 (패스워드 만료일 이후 로그인시 패스워드 변경 다시 로그인)
: 계정의 만료일 (계정이 만료되면 패스워드는 상관없이 접근 불가능. 기간이 정해져있는 프로젝트 업무의 외부 출입자들에게 적용)
: 사용안함

 

# chage

사용자의 패스워드 만기 정보를 변경 및 설정하는 명령어입니다. 쉽게 말해서 사용자 패스워드 정보 관리입니다.

시스템에게 로그인한 사용자가 패스워드를 변경해야 하는지를 알려줍니다.

시스템 관리 명령어이다 보니, root 권한을 가진 사용자만 사용 가능합니다.

-l 설정 도움말
-l userid user의 설정 정보 확인
-m 패스워드 최소 사용일
-M 패스워드 최대 사용일
-W 경고 메세지 출력일
-I 유예 기간
-E 계정의 만료일

<예제 1>
aa계정을 생성 패스워드 최소 사용일 5, 최대사용일 45, 경고메세지는 7일전부터, 유예기간은 5일, 계정의 만료일은 유예기간으로부터 약 7일후로 설정하세요.

그리고 다음과 같은 테스트를 진행해보세요.

1. 최소사용일 테스트
2. 최소 사용일 이후 테스트
3. 경고메세지 출력
4. 유예기간 내 테스트
5. 유예기간 후 계정 만료전 테스트
6. 계정만료후 테스트
7. 유예기간내 패스워드 변경 테스트
8. chage -l 확인

# chage -m 5 -M 45 -W 7 -I 5 -E 2022/05/17 aa 

1. 최소 사용일 테스트

최소 사용 5일이 지나지 않아 암호 변경이 되지 않은 모습입니다.

 

2. 최소 사용일 이후 테스트 

날짜를 최소 사용일 이후인 3/27로 변경 하였습니다.
정상적으로 암호를 변경 할 수 있는 모습입니다.

 

3. 경고메세지 출력

날짜를 만료일 전인 05/03로 변경 하였습니다.
곧 만료 된다는 경고를 받은 모습입니다.

 

4. 유예기간 내 테스트

날짜를 유예기간인 05/08로 변경 하였습니다.
암호는 만료되었으며, 암호를 변경하라는 모습입니다.

 

5. 유예기간 후 계정 만료전 테스트

날짜를 유예기간 후 계정 만료전인 05/13으로 변경하였습니다.
외부에서 접속을 막은 모습입니다.

 

6. 계정만료후 테스트 

날짜를 계정만료후인 05/20으로 변경하였습니다.
외부에서 접속을 막은 모습입니다.

 

7. 유예기간내 패스워드 변경 테스트 

날짜를 유예기간인 05/08로 변경하였습니다.
새로운 암호로 변경하고, 다시 로그인 한 모습입니다.

 

8. chage -l 확인

 

반응형

'IT > Linux' 카테고리의 다른 글

리눅스_DAS, NAS, SAN  (0) 2022.03.22
리눅스_사용자 계정 및 그룹 관리_02_/etc/default/useradd, /etc/login.defs, /etc/skel  (0) 2022.03.22
리눅스_ACL_setfacl,getfacl  (0) 2022.03.17
리눅스_파일 속성 분석  (0) 2022.03.17
리눅스_tar + 압축  (0) 2022.03.16
'IT/Linux' 카테고리의 다른 글
  • 리눅스_DAS, NAS, SAN
  • 리눅스_사용자 계정 및 그룹 관리_02_/etc/default/useradd, /etc/login.defs, /etc/skel
  • 리눅스_ACL_setfacl,getfacl
  • 리눅스_파일 속성 분석
nyub
nyub
  • nyub
    xinyub cloud
    nyub
  • 전체
    오늘
    어제
    • 전체 글 (165)
      • Cloud (17)
        • AWS (12)
        • KT (3)
        • NHN (2)
      • IT (131)
        • Network (22)
        • Linux (41)
        • Windows server (30)
        • Docker (9)
        • Terraform (5)
        • Git, Github (3)
        • Kubernetes (9)
        • CI CD (11)
        • 기타 (1)
      • Etc (17)
        • TroubleShooting (12)
        • Other Info (4)
        • 자격증 (1)
  • 반응형
  • hELLO· Designed By정상우.v4.10.3
nyub
리눅스_사용자 계정 및 그룹 관리_01_/etc/passwd, /etc/shadow
상단으로

티스토리툴바