공부/정보보안기사

<정보보안기사> 1. 시스템 이론 - 사용자 관리(useradd, usermod, userdel 명령어)

Richard_Hoon 2024. 11. 18. 23:30
반응형

 

목차

     

    사용자 계정 추가(useradd) 명령어 문법

     

    `useradd` 명령어는 사용자 계정을 추가할 때 사용

     

    문법(리눅스) `useradd [옵션] [이름]`
    옵션 `-u`  사용자 ID를 직접 지정
     시스템에서 중복되지 않는 고유한 값을 사용해야함
    `-g`  기본 그룹을 지정
     사용자가 로그인 할 때 자동으로 속하게 되는 그룹
    `-G`  보조 그룹을 지정
     사용자가 속하게 될 추가 그룹을 쉼표(,)로 구분하여 여러 개 지정 할 수 있음
    `-c`  사용자의 설명(comment)을 설정
     일반적으로 사용자의 이름이나 부서 등을 입력
    `-m`  사용자의 홈 디렉터리를 자동으로 생성
    `-d`  홈 디렉터리의 위치를 지정
     -m 옵션과 함께 사용하는 게 일반적
    `-s`  사용자가 로그인 할 때 사용할 쉘을 지정
     /bin/bash나 /bin/sh 등이 일반적
    `-e`  계정 만료일을 설정
     지정된 날짜가 되면 계정이 비활성화됨
    설명  `useradd` 명령은 `root` 만 사용 가능함

     

     

     

    useradd 예시

     

    `useradd -m -d /home/projects/user1 -g developers -G sudo,wheel -s /bin/zsh user1`

     

    `-m` : 홈 디렉터리 자동으로 생성

    `-d` : 홈 디렉터리 위치를 `/home/projects/user1`로 지정

    `-g developers` : 기본 그룹을 `developers`로 설정

    `-G sudo,wheel` : 추가 그룹으로 `sudo`와 `wheel`을 지정하여 관리자 권한을 얻을 수 있음

    `-s /bin/zsh`

     

    특정 프로젝트를 담당하는 개발자 계정을 생성하고, 프로젝트 디렉터리를 홈 디렉터리로 설정하여 관리 편의성을 높임. 그리고 sudo 권한을 부여하여 시스템 관리 작업을 수행 할 수 있음

     

    < 참고>

    `sudo` 그룹에 속한 사용자는 `sudo` 명령을 통해 루트 권한을 얻어 시스템 관리 작업을 수행할 수 있음

    `wheel` 그룹에 속한 사용자는 `su` 명령을 통해 root 사용자로 권한 상승이 가능함

     

     

    사용자 계정 정보 변경(usermod) 명령어 문법

     

    `usermod` 명령어는 기존 사용자 계정 정보를 변경하기 위해 사용

     

    문법(리눅스) `usermod [옵션] [내용]`
    옵션 `-u`  uid(사용자 ID)를 변경
    `-g`  gid(기본 그룹 ID)를 변경
    `-G`  보조 그룹 ID 변경
    `-c`  사용자 설명(comment)을 변경
    `-m`  사용자의 홈 디렉터리 내용을 유지한 채 위치만 변경
    `-d`  홈 디렉터리를 변경
    `-s`  로그인 쉘을 변경
    `-e`  계정 만료일을 변경 (YYYY-MM-DD 형식)
    `-L`  계정을 잠금
    `-U`  잠긴 계정을 해제
    설명  `usermod` 명령은 `root` 만 사용 가능함

     

     

     

    usermod 예시

     

    `usermod -m -d /home/new_home user1`

     

    `user1`의 홈 디렉터리를 `/home/new_home`으로 변경

    `-m` 옵션 : 기존 홈 디렉터리의 내용을 새로운 위치로 이동

     

    `usermod -o -u 0 -g 0 user2`

     

    `user2`의 `uid`를 `0`, `gid`를 `0`으로 변경하여 `root` 권한을 탈취함

    `-o` : `root`의 `uid`가 `0`이기에 원래는 중복으로 변경이 안되나 `-o`를 사용하면 중복 `uid`를 허용함

     

    `usermod -G sysadmins,log_readers user3`

     

    시스템 운영을 담당하는 `user3`에게 시스템 설정 파일 수정 권한(`sysadmins`)과 로그 파일 접근 권한(`log_readers`)을 부여함

     

     

    사용자 계정 삭제(userdel) 명령어 문법

     

    `userdel` 명령어는 기존 사용자 계정 정보를 삭제하기 위해 사용

     

    문법(리눅스) `userdel [옵션] [사용자명]`
    옵션 `-r`  사용자의 홈 디렉터리를 포함한 모든 관련 파일을 삭제
     삭제하면 모든 데이터 복구 불가능하여 주의
    설명  `userdel` 명령은 `root` 만 사용 가능함

     

     

     

    userdel 예시

     

    `userdel  testuser1`

     

    `testuser1`라는 사용자 계정을 삭제함(홈 디렉터리 이하는 남아있음)

     

     

    `userdel -r testuser2`

     

    `testuser2`라는 사용자 계정과 해당 사용자의 홈 디렉터리를 완전히 삭제함

     

    반응형