리눅스 사용자·그룹·권한 관리 완벽 정리

여준서·2025년 8월 29일
post-thumbnail

1. 사용자와 그룹 개념

  • 사용자(User) : 리눅스 시스템에 로그인할 수 있는 계정
  • 그룹(Group) : 여러 사용자를 묶어 동일한 권한을 부여하는 단위

👉 파일 접근 권한은 소유자(owner) / 그룹(group) / 기타(other) 로 나뉘며, 리눅스 보안의 핵심입니다.


2. 사용자 종류

  • root : 시스템 관리자 (UID=0, 모든 권한)
  • 일반 사용자 : 실제 작업용 계정 (UID ≥ 1000)
  • 시스템 사용자 : 서비스/데몬 실행용 계정 (UID 1~999, 로그인 불가)

3. /etc/passwd와 /etc/group 구조

📂 /etc/passwd – 사용자 계정 정보

사용자명:x:UID:GID:설명:홈디렉토리:로그인쉘

📂 /etc/group – 그룹 정보

그룹명:x:GID:그룹원

4. 사용자·그룹 정보 조회 명령어

명령어설명
id [사용자명]UID, GID, 소속 그룹 확인
groups [사용자명]속한 그룹 목록 확인
getent passwd [사용자명]/etc/passwd에서 계정 정보 확인
getent group [그룹명]/etc/group에서 그룹 정보 확인

5. 사용자 생성과 기본 그룹

# 사용자 생성
sudo useradd devuser

# 비밀번호 설정
sudo passwd devuser

👉 새 사용자 생성 시 동일한 이름의 기본 그룹이 자동으로 만들어집니다.


6. 그룹 생성과 사용자 추가

# 그룹 생성
sudo groupadd developers

# 사용자 추가 (보조 그룹 등록)
sudo usermod -aG developers devuser

💡 /etc/group 파일을 직접 수정할 수도 있지만, 운영 환경에서는 명령어 사용 권장


7. 비밀번호 설정 및 변경

  • 현재 사용자 변경:
    passwd
    
  • 특정 사용자 비밀번호 변경(root 필요):
    sudo passwd devuser
    

8. 사용자 전환 (su)

  • su - [사용자명] → 지정 계정으로 전환 (환경 변수 로드)
  • su - → root 계정으로 전환

9. 로그인 및 세션 확인

명령어설명
last최근 로그인 기록
who현재 로그인 사용자
whoami현재 계정 이름

10. 특정 사용자의 열린 파일 확인 (lsof)

lsof -u devuser

👉 해당 사용자가 연 파일/프로세스를 확인 (트러블슈팅 시 유용)


11. 사용자와 그룹 삭제

  • 사용자 삭제:
    sudo userdel devuser
    
    # 홈 디렉토리까지 삭제
    sudo userdel -r devuser
    
  • 그룹 삭제:
    sudo groupdel developers
    

12. 실습 및 주의사항

⚠️ 주의할 점

  • root 계정 직접 로그인은 최소화 → sudo 사용 권장
  • 사용자 삭제 시, 해당 사용자가 만든 파일은 그대로 남을 수 있음 (권한 정리 필요)
  • 시스템 계정은 서비스 실행에 필요 → 삭제 금지
profile
블로그 이전했습니다 https://duwnstj.github.io

0개의 댓글