사용자 및 그룹 정보 파일

Woo Yong·2023년 8월 4일
1

Linux

목록 보기
2/7
post-thumbnail

User


사용자는 실제로 시스템을 사용하려는 사람과 연결된 계정이다. 그리고 시스템은 사용자를 식별할때, 사용자 이름으로 판별하지 않고 UID(User ID)번호를 통해 구분한다.

📌 사용자 이름이 다르더라도 UID값이 같다면 리눅스는 동일한 사용자로 인식한다.

Group


그룹은 공통의 목적을 가진 사람들이 모인 집합으로서 파일의 권한을 공유할 때 사용된다. 그룹에도 사용자와 동일하게 GID(Group ID)가 있고, 리눅스 시스템이 그룹을 식별할때 GID값을 통해 식별한다.

✔︎ 기본 그룹

리눅스에서 모든 사용자는 필수적으로 하나 이상의 그룹에 속해야한다. 이러한 그룹을 기본그룹이라고하고, 사용자가 파일을 생성할 경우 사용자의 기본 그룹이 파일의 사용자 그룹으로 지정된다.

✔︎ 보조그룹

보조 그룹은 사용자가 소속되는 또 다른 그룹이고, 사용자를 생성할 때 지정하거나, 사용자를 생성한 후 사용자 정보를 수정하여 소속 그룹을 지정할 수 있습니다.

파일정보


✔︎ /etc/passwd

  • 시스템에 등록된 사용자 정보

  • 기본 구조 : USER : x : UID : GID : GECOS : HOME : SHELL

  • 필드 설명

    필드설명
    USER사용자의 이름을 나타낸다
    X(place holder)사용자의 패스워드르를 저장하는 필드이다. 현재 이 필드는 사용되지 않고, 패스워드 정보는 /etc/shadow파일에 저장된다.
    UID시스템에서 사용자를 식별하는 번호
    0번은 root 사용자, 0~999는 시스템 사용자, 1000이상은 일반 사용자
    GID시스템에서 그룹을 식별하는 번호
    0번은 root 그룹, 0~999는 시스템 그룹, 1000번 이상은 일반 그룹
    GECOS사용자 계정에 대한 주석을 기재할 수 있다.
    HOME사용자 홈 디렉토리를 절대경로로 나타낸다
    SHELL사용자가 기본으로 사용할 쉘을 나타낸다.
  • 가본적으로 생성되는 주요 사용자

    사용자명UID설명
    1. root0시스템의 관리자 계정, 시스템을 관리하기 위한 특권(Privilege)을 가지고 있기 때문에
    파일에 대한 권한 (Permission)의 제약을 거의 받지 않는다.
    2. bin1시스템 구동중인 바이너리 파일을 관맇기 위한 계정
    3. daemon2백그라운드 프로세스에 대한 작업을 제어하기 위한 시스템 계정
    4. adm3시스템 관리를 위한 계정으로 시스템 로깅 같은 특정 시스템 파일을 관리한다.
    5. lp4로컬 프린트를 위한 데몬 계정
    6. nobody99익명 연결 계정
    7. ntp38컴퓨터 시간을 동기화 시켜주기 위해 만들어진 Network Time Protocol계정
    8. gdm42그래픽 화면 관리 계정

✔︎ /etc/shadow

  • 시스템에 등록된 사용자의 패스워드에 대한 설정
  • 사용자의 패스워드를 해시패스워드 형태로 저장하고 패스워드에 대한 속성을 저장한 파일이다.
  • 기본 구조 : USER : HASH : LASTCHANGE : MIN : MAX : WARNING : INACTIVE : EXPIRE : BLANK
  • 필드 설명
    필드설명
    USER사용자의 이름을 나타낸다
    HASH해시 알고리즘을 사용하여 생성된 패스워드
    LASTCHANGE마지막으로 패스워드를 변경한 날짜
    MIN패스워드 변경후 최소 사용 시간
    MAX패스워드 변경후 최대 사용 시간
    WARNING만료일이 되기 전 사용자에게 경고 메시지를 출력할지 설정한다.
    MAX=90, WARNING=5이면 패스워드를 사용한지 85일부터 경고 메시지가 출력된다.
    INACTIVE패스워드가 만료되고 INACTIVE에 지정된 숫자 안에 패스워드를 변경하지 않으면 사용자 계정이 잠금 상태로 변경된다.
    EXPIRE사용자 계정의 만료일을 지정한다.
    만료일이 되면 해당 사용자는 잠금상태가 되어 로그인 할 수 없다.
    BLANK예약된 필드로 아직 사용하지 않는다.

✔︎ /etc/group

  • 시스템에 등록된 그룹 정보

  • 리눅스에서는 사용자를 생성할때 그룹을 설정하지 않으면 Default로 사용자의 이름과 동일한 그룹을 생성하여 지정해줍니다.

  • 기본 구조 : GROUP : x : GID : MEMBER

  • 필드 설명

    필드설명
    GROUP그룹의 이름
    x그룹의 패스워드를 저장하는 필드 였지만, 현재는 /etc/gshadow파일에 저장된다.
    GID그룹의 GID
    MEMBEr이 그룹을 보조 그룹으로 지정하고 있는 사용자의 목록
  • /etc/group파일은 그룹의 정보를 저장하고 있지만, 각 그룹별 해당 그룹을 기본 그룹으로 지정하고 있는 사용자의 정보는 확인 할 수 없다.

    📌 사진과 같이 각 그룹의 기본 그룹을 알수는 없고, 각 그룹의 어떤 사용자가 속해있는지 알 수 있다는 것이다.

✔︎ /etc/gshawdow

  • 시스템에 등록된 그룹의 패스워드에 대한 설정
  • 기본 구조 : ```GROUP : PASSWORD : ADMIN : MEMBER````
  • 필드 설명
    필드설명
    GROUP그룹의 이름
    PASSWORD그룹의 암호화된 패스워드
    ADMIN해당 그룹의 관리자를 나타낸다
    MEMBER해당 그룹의 멤버를 나타낸다.
profile
Back-End Developer

2개의 댓글

comment-user-thumbnail
2023년 8월 4일

유익한 글이었습니다.

1개의 답글