Recent Posts
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Today
Total
250x250
05-06 14:30
관리 메뉴

호빵

Linux | 사용자 및 그룹 분석-passwd 본문

OS/Linux

Linux | 사용자 및 그룹 분석-passwd

만두는정말맛있어 2022. 9. 18. 21:38

사용자 관리

1) 연관된 파일과 디렉토리
/etc/passwd  : ID, 패스워드, UID, GID, 코멘트, 홈디렉토리, login shell 
/etc/shadow : ID, 암호화 된 패스워드, 패스워드 변경 날짜, 최소/최대 사용일, 경고메세지 출력기간, 유예기간, 계정의 만료일
/etc/group : 그룹ID, 패스워드, GID, 그룹에 속한 사용자
/etc/login.defs : mail 사서함 위치, 패스워드 최소/최대사용일, 패스워드 최소길이, 경고메세지 출력기간, UID, GID 범위, 패스워                                         드 암호화 알고리즘(sha512)
/etc/default/useradd : system GID, 유예기간, 계정만료일, skel 디렉터리, 홈디렉터리 위치, login shell
/etc/skel : 사용자의 홈디렉터리에 배포할 파일이나 디렉터리

/etc/passwd 파일 분석

ex) a:x:1000:1000::/home/a:/bin/bash

a : 사용자명(id)
:x : 패스워드, 실제 패스워드 저장은 /etc/shadow 파일에 암호화돼서 저장됨(SHA512) 
:1000 : UID(User ID, 고유함) 단, 옵션을 사용하면 중복해서 생성 가능 (권장하지 않음)
:1000 : GID(Group ID) 하나의 사용자는 여러 그룹에 속할수 있음
            // Linux에서는 사용자를 생성하면 동일한 group으로 자동으로 생성됨
: : Comment(별칭, 설명)
:/home/a : 사용자의 홈디렉토리 위치
:/bin/bash : login시 부여하는 shell

 


2) 사용자 추가
# useradd 사용자명

3)  사용자 제거
# userdel -r 사용자명  //  반드시 -r 옵션을 사용해서 제거 (홈 디렉터리 등 관련 파일까지 완전히 삭제하는 옵션)

 

4) 사용자 설정 변경
#  usermod 옵션은 useradd와 동일함

  // 단, -d 옵션으로 디렉토리 변경 시에는 -m 옵션을 사용해야만 컨텐츠까지 이동 가능함.


5) 옵션
-u int : UID 지정 (마지막으로 생성한 uid값 바로 뒤 id번호를 사용함)
-g int : GID 지정, UID와 동일하게 생성되므로 최초 사용시 UID와 동일한 ID를 입력하면 "없는 그룹입니다"란 메세지가 출력되면서 계정 생성 불가하니 유의할 것.
-c : char. 코멘트, 별칭 또는 설명
-d : 디렉터리 사용자의 홈디렉터리 지정
-s : login shell 사용자가 로그인시 사용할 shell 지정

shell은 명령어 해석기로서 로그인 시 shell 지정되지 않으면 login 불가
# cat /etc/shell로 확인
# echo $SHELL  로 현재 로그인한 shell 확인 가능
# chsh 사용자명 -s shell 사용자 : login shell 변경
# chsh root -s /bin/bash 다음 로그인 시 변경됨
** /sbin/nologin 로그인 불가능

 


TEST1

문제 1

사용자 a 생성 : uid 10001, gid 10001, 추가 그룹은  root, 코멘트는 tech, 홈디렉토리는 /home_2/a, 로그인 X (이유 출력 o)

 

[root@localhost ~]# useradd -u 10001 -G root -c tech -d /home_2/a -s /sbin/nologin a


문제 2

사용자 b 생성 :  uid 20000, gid 20000, 추가 그룹은 10000, 코멘트는 admin, 홈디렉토리는 /home/b, login shell은 /bin/sh 


[root@localhost ~]# useradd -u 20000 -G 10000 -c admin -d /home/b -s /bin/sh b


문제 3

사용자 c 생성 : uid 2000, gid 2000, 추가 그룹은 0, 코멘트는 admin, 홈디렉터리는 home_1/c, 로그인 불허(이유 출력 x)


[root@localhost ~]# useradd -u 2000 -G 0 -c admin -d /home_1/c -s /bin/false c

728x90

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

Linux | 명령어 정리  (4) 2022.09.18
Linux | 사용자 및 그룹 분석-shadow  (2) 2022.09.18
Linux | ACL  (1) 2022.09.18
Linux | 파일 링크, inode  (2) 2022.09.16
Linux | 파일 속성 분석 - 파일 및 디렉터리 메타데이터  (1) 2022.09.16