사용자는 실제로 시스템을 사용하려는 사람과 연결된 계정이다. 그리고 시스템은 사용자를 식별할때, 사용자 이름으로 판별하지 않고 UID(User ID)번호를 통해 구분한다.
📌 사용자 이름이 다르더라도 UID값이 같다면 리눅스는 동일한 사용자로 인식한다.
그룹은 공통의 목적을 가진 사람들이 모인 집합으로서 파일의 권한을 공유할 때 사용된다. 그룹에도 사용자와 동일하게 GID(Group ID)가 있고, 리눅스 시스템이 그룹을 식별할때 GID값을 통해 식별한다.
리눅스에서 모든 사용자는 필수적으로 하나 이상의 그룹에 속해야한다. 이러한 그룹을 기본그룹이라고하고, 사용자가 파일을 생성할 경우 사용자의 기본 그룹이 파일의 사용자 그룹으로 지정된다.
보조 그룹은 사용자가 소속되는 또 다른 그룹이고, 사용자를 생성할 때 지정하거나, 사용자를 생성한 후 사용자 정보를 수정하여 소속 그룹을 지정할 수 있습니다.
시스템에 등록된 사용자 정보
기본 구조 : 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. root 0 시스템의 관리자 계정, 시스템을 관리하기 위한 특권(Privilege)을 가지고 있기 때문에
파일에 대한 권한 (Permission)의 제약을 거의 받지 않는다.2. bin 1 시스템 구동중인 바이너리 파일을 관맇기 위한 계정 3. daemon 2 백그라운드 프로세스에 대한 작업을 제어하기 위한 시스템 계정 4. adm 3 시스템 관리를 위한 계정으로 시스템 로깅 같은 특정 시스템 파일을 관리한다. 5. lp 4 로컬 프린트를 위한 데몬 계정 6. nobody 99 익명 연결 계정 7. ntp 38 컴퓨터 시간을 동기화 시켜주기 위해 만들어진 Network Time Protocol계정 8. gdm 42 그래픽 화면 관리 계정
USER : HASH : LASTCHANGE : MIN : MAX : WARNING : INACTIVE : EXPIRE : BLANK
필드 설명 USER 사용자의 이름을 나타낸다 HASH 해시 알고리즘을 사용하여 생성된 패스워드 LASTCHANGE 마지막으로 패스워드를 변경한 날짜 MIN 패스워드 변경후 최소 사용 시간 MAX 패스워드 변경후 최대 사용 시간 WARNING 만료일이 되기 전 사용자에게 경고 메시지를 출력할지 설정한다.
MAX=90, WARNING=5이면 패스워드를 사용한지 85일부터 경고 메시지가 출력된다.INACTIVE 패스워드가 만료되고 INACTIVE에 지정된 숫자 안에 패스워드를 변경하지 않으면 사용자 계정이 잠금 상태로 변경된다. EXPIRE 사용자 계정의 만료일을 지정한다.
만료일이 되면 해당 사용자는 잠금상태가 되어 로그인 할 수 없다.BLANK 예약된 필드로 아직 사용하지 않는다.
시스템에 등록된 그룹 정보
리눅스에서는 사용자를 생성할때 그룹을 설정하지 않으면 Default로 사용자의 이름과 동일한 그룹을 생성하여 지정해줍니다.
기본 구조 : GROUP : x : GID : MEMBER
필드 설명
필드 설명 GROUP 그룹의 이름 x 그룹의 패스워드를 저장하는 필드 였지만, 현재는 /etc/gshadow파일에 저장된다. GID 그룹의 GID MEMBEr 이 그룹을 보조 그룹으로 지정하고 있는 사용자의 목록
/etc/group파일은 그룹의 정보를 저장하고 있지만, 각 그룹별 해당 그룹을 기본 그룹으로 지정하고 있는 사용자의 정보는 확인 할 수 없다.
📌 사진과 같이 각 그룹의 기본 그룹을 알수는 없고, 각 그룹의 어떤 사용자가 속해있는지 알 수 있다는 것이다.
필드 설명 GROUP 그룹의 이름 PASSWORD 그룹의 암호화된 패스워드 ADMIN 해당 그룹의 관리자를 나타낸다 MEMBER 해당 그룹의 멤버를 나타낸다.
유익한 글이었습니다.