ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Shell & Kernel의 역할 / Linux 시스템 사용자 정보 확인
    Engineer information security 2020. 10. 6. 23:59
    반응형

    Shell과 Kernel은 리눅스를 시작하면 항상 나오는 단어인 거 같다.

    그리고 이 두가지와 사용자의 관계는 아래와 같다. 

     

    Shell Kernel의 역할
    Shell Kernel의 역할

     

    User : 명령어를 입력하는 사용자를 의미한다.

    Shell : 명령어 해석기. User의 명령어를 Kernel이 알 수 있도록 해석

             Kernel의 응답을 User가 알 수 있도록 해석

    Kernel : 시스템을 통제하는 컴퓨터의 핵심이다.

    다음은 리눅스 시스템 사용자 정보를 확인하는 방법이다.

    가상화로 만들어 놓은 CentOS에서 사용자 관련 정보를 출력하는 명령어를 입력하였다.

    명령어는 cat /etc/passwd 이다. 

    리눅스 passwd
    리눅스 passwd

    Linux는 사용자의 생성/삭제/변경 등등의 정보를 /etc/passwd 파일에 저장한다.

    위에서 보이는 root 계정은 super user이다. 모든 권한을 다 가지고 있다.

    윈도우의 Administrator와 같다고 생각하면 될 거 같다.

    콜론 구문자를 이용해 총 7개로 나눠져 있으며, 각각의 의미가 있다.

    root 계정을 예를 들어 설명해 보겠다.

     

    root: x: 0: 0: root: / root: /bin/bash

     

    콜론 구분자로 분리된 각각을 설명하면,

    ① root : 계정명. 

    ② x : 패스워드. x로 나타나는 이유는 shadow 패스워드 사용 중이기 때문이다.

    ③ 0 : User ID(UID) 

    ④ 0 : Group ID(GID) 

    ⑤ root : 코멘트이다. 사용자의 추가 정보를 입력

    ⑥ root : 사용자의 홈 디렉터리 위치

    ⑦ /bin/bash : 로그인 쉘

     

    이 중에서도 ③,④ 번의 보안에 특별히 유의 해야 한다.

    UID / GID가 0인 경우 시스템에서는 root의 권한을 가진 것과 같은 상태로 인식되기 때문이다.

    보안을 위해 이 파일의 주기적인 점검을 통해 불필요한 ID가 존재하는지, UID와 GID가 0인 계정이 존재하는지

    확인을 하는 것이 필요하다. 

     

    정리하자면 

     

    Shell은 User와 Kernel 사이에서 명령어를 해석

    Linux의 계정 정보는 etc/passwd 파일에 저장(절대 패스워드가 저장되는 것이 아님을 기억하자)

    보안을 위해 UID / GID 값이 0인 계정이 존재하는지 주기적으로 확인

    반응형

    댓글

Designed by Tistory.