Ubuntu 사용자 및 권한 관리 기초 매뉴얼

이 문서는 Ubuntu 시스템에서 사용자 계정과 파일/디렉토리 권한을 관리하는 방법을 초보자를 위해 설명합니다.

1. 사용자(User)와 그룹(Group)의 기본 개념
  • 사용자(User): 시스템에 로그인할 수 있는 계정. 각 사용자에게 UID(고유 ID)가 부여됨.
  • 그룹(Group): 사용자 집합. 권한을 공유할 수 있는 단위. 하나의 기본 그룹(primary group)과 여러 보조 그룹(supplementary group)에 속할 수 있음.
  • 각 파일과 디렉토리는 소유자(owner), 그룹(group), 기타 사용자(other)에 대한 권한을 가짐.

2. 사용자 관리 명령어

▣ 사용자 생성

sudo adduser 사용자명
  • 홈 디렉토리 자동 생성 (/home/사용자명)
  • 로그인 셸 기본값: /bin/bash
  • 기본 그룹과 동일한 이름의 그룹 자동 생성

▣ 사용자 삭제

sudo deluser 사용자명
sudo deluser --remove-home 사용자명
  • –remove-home: 홈 디렉토리 및 메일 스풀 제거

▣ 사용자 정보 변경

sudo usermod -s /bin/zsh 사용자명     # 셸 변경
sudo usermod -d /home/new 사용자명    # 홈 디렉토리 변경
sudo usermod -l 새이름 기존이름       # 사용자명 변경

▣ 사용자 비밀번호 설정 및 변경

sudo passwd 사용자명

3. 그룹 관리

▣ 그룹 생성 및 삭제

sudo addgroup 그룹명
sudo delgroup 그룹명

▣ 사용자 그룹 추가/제거

sudo usermod -aG 그룹명 사용자명  # 보조 그룹 추가
sudo gpasswd -d 사용자명 그룹명   # 그룹에서 제거

▣ 사용자 그룹 확인

groups 사용자명
id 사용자명

4. 파일 및 디렉토리 권한

▣ 권한 구조

-rwxr-xr--  1 user group  ...  파일명
  • 첫 문자: 파일 타입 (-: 일반파일, d: 디렉토리)
  • r: 읽기, w: 쓰기, x: 실행
  • 첫 3자: 소유자 권한 / 다음 3자: 그룹 권한 / 마지막 3자: 기타 사용자 권한

▣ 권한 변경 (chmod)

chmod 755 파일명      # rwxr-xr-x
chmod u+x 스크립트.sh # 소유자에게 실행 권한 추가
chmod o-r 파일명      # 기타 사용자 읽기 권한 제거

▣ 소유자 및 그룹 변경 (chown)

sudo chown 사용자명 파일명
sudo chown 사용자명:그룹명 파일명
sudo chown -R 사용자:그룹 디렉토리명

5. sudo 권한 관리

▣ 사용자에게 sudo 권한 부여

sudo usermod -aG sudo 사용자명

▣ sudoers 파일 편집

sudo visudo
  • visudo는 문법 검사 기능이 내장된 안전한 편집기
  • 예: 사용자명 ALL=(ALL:ALL) ALL

6. 로그인 셸 및 홈 디렉토리

▣ 셸 변경

chsh -s /bin/zsh 사용자명

▣ 홈 디렉토리 이동 시 절차

sudo usermod -d /home/new 사용자명
sudo mv /home/old /home/new
sudo chown -R 사용자명:그룹명 /home/new

7. 고급 사용자 설정

▣ 비밀번호 만료 정책 설정

sudo chage -l 사용자명     # 현재 정책 보기
sudo chage -M 90 사용자명  # 최대 사용일수 90일로 설정

▣ 계정 잠금 및 잠금 해제

sudo passwd -l 사용자명    # 잠금
sudo passwd -u 사용자명    # 잠금 해제

❏ 참고 파일 경로
파일 경로설명
/etc/passwd사용자 계정 정보
/etc/shadow암호 및 만료 정보 (루트만 읽기 가능)
/etc/group그룹 정보
/etc/sudoerssudo 권한 설정 파일 (visudo로 편집)
❏ 요약
작업 내용명령어 예시
새 사용자 생성sudo adduser alice
사용자 삭제 (홈 포함)sudo deluser –remove-home alice
그룹 추가sudo addgroup devteam
그룹에 사용자 추가sudo usermod -aG devteam alice
sudo 권한 부여sudo usermod -aG sudo alice
실행 권한 부여chmod +x script.sh
소유권 변경sudo chown alice:devteam 파일명

이 문서는 CLI 위주로 구성되어 있으며, GUI 도구(gnome-control-center, Cockpit) 사용법은 별도 문서에서 다룰 수 있습니다.