Fascination
article thumbnail
Published 2021. 10. 11. 22:25
[Linux] 사용자와 그룹 Study/Linux

# 사용자와 그룹

- 리눅스는 다중 사용자 시스템

  > 1대의 리눅스에 사용자 여러 명이 동시에 접속해서 사용할 수 있는 시스템

- root: 수퍼 유저

  > 모든 작업을 실행할 수 있는 권한

  > 시스템에접속할 수 있는 사용자를 생성할 수 있는 권한이 있음

- 모든 사용자는 하나 이상의 그룹에 소속되어 있어야 함

 

 

# 사용자 확인

- /etc/passwd 파일을 열어 확인할 수 있음

vi /etc/passwd

> 여러명의 사용자 확인 가능

> 제일 위의 root 사용자부터 제일 아래의 바로 위인 tcpdump 사용자까지는

리눅스에서 기본적으로 존재하는 표준 사용자

 

사용자 이름:암호:사용자ID:사용자가 소속된 그룹 ID:전체 이름:홈 디렉터리:기본 셸

 

* 위 사진에서 euna~ 줄을 분석해봄

  > 암호가 x로 표시됨: /etc/shadow 파일에 비밀번호가 저장되어 있다는 의미

  > 사용자 id: 1000, group id: 1000, 전체 이름: euna, 홈 디렉터리: /home/euna, 기본 셸: bash

 

 

# 그룹 확인

- /etc/group 파일을 확인

그룹 이름:비밀번호:그룹 id:그룹에 속한 사용자 이름

> root 그룹에는 실제로 root 사용자가 속해 있으나 여기에는 표현되어 있지 않음

> /etc/passwd 파일에서는 euna 사용자가 속한 그룹이 1000번으로 표현되었음

즉, /etc/group 파일에서도 euna 그룹 id가 1000번이므로 euna 그룹에는 euna가 속해 있는 것임

 

 

# 사용자 및 그룹과 관련된 명령어

# useradd (or adduser)

- 새로운 사용자를 추가

- 이 명령을 사용하면 /etc/passwd, /etc/shadow, /etc/group 파일에 새로운 행이 추가됨

useradd newuser                                // newuser라는 이름의 사용자 생성
useradd -u 1111 newuser                     // newuser 사용자를 생성하면서 사용자 ID를 1111로 지정
useradd -g mygroup newuser               // newuser라는 사용자를 생성하면서 mygroup에
                                                       newuser 사용자를 포함 시킴 (mygroup 그룹을 먼저 만들어 놓아야 함)
useradd -d /newhome newuser             // newuser 사용자를 생성하면서 홈 디렉터리를 /newhome으로 지정
useradd -s /bin/csh newuser                 // newuser 사용자를 생성하면서 기본 셸을 bin/csh로 지정 

 

# passwd

- 사용자의 비밀번호를 지정하거나 변경함

passwd newuser                                 // newuser사용자의 비밀번호 지정(또는 변경)

 

# usermod

- 사용자의 속성을 변경함

- 옵션은 useradd와 동일

usermod -g root newuser                   // newuser 사용자의 그룹을 root 그룹으로 변경

 

# userdel

- 사용자를 삭제함

userdel newuser
userdel -r newuser

 

# chage

- 사용자의 암호를 주기적으로 변경하도록 설정

chage -l newuser                     // newuser 사용자에 설정된 사항 확인
chage -m 2 newuser                 // newuser 사용자에 설정한 암호를 사용해야 하는 최소 일자
                                               (즉, 변경 후 최소 2일은 사용해야 함)
chage -M 30 newuser               // newuser 사용자에 설정한 암호를 사용할 수 있는 최대 일자
                                               (즉, 변경 후 최대 30일까지 사용할 수 있음)
chage -E 2026/12/12 newuser    // newuser 사용자에 설정한 암호가 만료되는 날짜
                                               (즉, 2026/12/12까지만 사용할 수 있음)
chage -W 10 newuser              // newuser 사용자에 설정한 암호가 만료되기 전에 경고하는 기간
                                              지정하지 않을 경우 기본값은 7일
                                              (즉, 이와 같이 설정하면 암호가 만료되기 10일 전부터 경고 메시지 발생)

 

# groups

- 사용자가 소속된 그룹을 보여줌

groups                                // 현재 사용자가 소속된 그룹을 보여줌
groups newuser                    // newuser가 소속된 그룹을 보여줌

 

# groupadd

- 새로운 그룹을 생성함

groupadd newgroup                       // newgroup이라는 그룹 생성
groupadd -g 2222 newgroup            // newgroup이라는 그룹을 생성하면서 그룹 ID를 2222로 지정

 

# groupmod

- 그룹의 속성을 변경함

group -n mygroup newgroup      // newgroup 그룹의 이름을 mygroup으로 변경

 

# groupdel

- 그룹을 삭제

groupdel newgroup                // newgroup을 삭제(단, 해당 주요 그룹으로 지정한 사용자가 없어야 함)

 

# gpasswd

- 그룹의 암호를 설정하거나 그룹 관리를 수행

gpasswd newgroup                        // newgroup 그룹의 암호 지정
gpasswd -A newuser newgroup        // newuser 사용자를 newgroup 그룹의 관리자로 지정
gpasswd -a user2 newgroup            // user1을 newgroup 그룹의 사용자로 추가
gpasswd -d newuser newgroup        // user1 사용자를 newgroup 그룹의 사용자에서 제거

 

 

 

 


[출처]

- 숙명여자대학교 서버운영및보안 수업 - 이종우 교수님

- 이것이 우분투다 (개정판) - 우재남 지음

 

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

[Linux] 링크  (0) 2021.10.22
[Linux] 파일과 디렉터리의 소유권과 허가권  (0) 2021.10.22
[Linux] 리눅스 기본 명령어  (0) 2021.10.11
[Linux] 마운트와 CD/DVD/USB의 활용  (0) 2021.10.11
[Linux] 도움말 사용법 - man  (0) 2021.09.27
profile

Fascination

@euna-319

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!