• Home
  • About
    • PI photo

      PI

      Beginner's Blog

    • Learn More
    • Github
  • Posts
    • All Posts
    • All Tags
    • All Categories
  • Projects

[LINUX] 사용자 및 그룹관리

📆 Created: 2022.02.27 Sun

Reading time ~3 minutes

사용자 관리

  1. useradd (opt) [생성한 usr]: 리눅스의 사용자를 추가할 때 사용하는 명령
    • -d: 홈 디렉토리를 지정할 때 사용(기본경로 /home/usr)
      • useradd username -d directory
    • -e: 계정 사용 만료일자 지정 시 사용 -> 언제까지 사용할 수 있다.
    • -f: 계정 사용 유효일자 지정 시 사용 -> 며칠동안 사용할 수 있다.
    • -g: 그룹을 지정 시 사용(생략 시 사용자 계정과 동일한 그룹이 생성됨)
      • useradd -g groupname username
    • -G: 기본 그룹의 보조 그룹을 지정 시 사용

groups 명령을 통해 해당 사용자가 속한 그룹 확인 가능

cat /etc/groups -> tester:x:1003:1003::/home/tester:/bin/bash

  1. passwd (opt) [usr]: 사용자 비밀번호(암호) 설정. 리눅스에서 비밀번호 없는 사용자 계정은 로그인 되지 않음.
    • -l: 사용자 패스워드에 잠금기능 설정
      • passwd -l username -> /etc/shadow에서 확인 시 암호 맨 앞에 !!가 표시됨.
    • -u: 사용자 패스워드 잠금상태를 해제
    • -d: 사용자 패스워드를 제거(패스워드 없이 로그인)
    • -n: 패스워드 변경까지 최소 날짜 설정
    • -x: 패스워드 최대 사용 가능 날짜 설정
    • -w: 패스워드 만료 전 경고 날짜를 지정
    • -e: 다음 로그인 시 반드시 패스워드 재설정하도록 함

비밀번호 관리파일은 /etc/shadow에서 비밀번호를 암호화해 파일에 저장 -> tester:암호화된 password:16785:0:99999:7:::

  1. chage (opt) [usr]: 사용자 패스워드 정보를 출력하거나 패스워드 관련 정보를 설정하는 명령어
    • -l: 사용자 패스워드 정보를 표시
      • 최근 암호 변경 날짜
      • 암호 만료 일자
      • 암호 만료 일자 유무
      • 계정 만료 유무
      • 최소 의무 사용 기간
      • 최대 암호 사용 기간
      • 암호 만료 전 경고 날짜
    • -d: 사용자 패스워드 최근 변경 날짜를 수정
    • -m: 패스워드 변경까지 최소 날짜 설정
    • -M: 패스워드 최대 사용 가능 날짜 설정
    • -W: 패스워드 만료 전 경고 날짜를 지정
    • -E: 사용자 계정이 만기되는 날을 지정
      • chage -m 3 -M 180 -W 30 tester -> tester 사용자 패스워드 최소한 3일 사용, 최대 180일 사용, 암호 만료 전 30일 전부터 경고 메시지 표시
  2. su (opt) [user]: 현재 시스템에 로그인된 사용자 계정에서 다른 사용자 계정으로 바꾸어서 접속하는 명령. root 계정 접속 시 암호를 물어봄. root -> 일반 사용자 계정 변환 시 암호 묻지 않음.
    • -c: 쉘을 실행하지 않고 주어진 명령만을 수행. 사용자 전환은 하지 않은 상태에서 root 권한으로 1회 명령만 실행
      • su root -c "실행할 명령"
    • -, -l: 지정한 사용자의 환경변수를 적용해 로그인
      • su -root = su -l root

su를 사용한 후 exit 입력 시 원래 계정으로 돌아감.

사용자 계정과 관련한 파일

  • /home: 사용자 홈디렉토리
  • /etc/group: 사용자의 그룹 생성
  • /etc/passwd: 사용자 계정 id 및 패스워드 정보 기록
  • /etc/shadow: 계정 패스워드 등록
  • /etc/default/useradd 와 /etc/login.defs: 사용자 계정 생성 시 위 파일 내용을 기본값으로 계정 생성

/etc/default/useradd 파일 내용 또는 useradd -D

  • group = 100
  • home = /home
  • inactive = -1
  • expire =
  • shell = /bin/bash
  • skel = /etc/skel
  • create_mail_spool = yes
  1. usermod (opt) [user]: 사용자 쉘, 홈 디렉토리, 그룹, 사용자ID(uid), 그룹ID(gid) 등을 변경하는 명령어
    • -d: 사용자의 홈 디렉토리를 변경
    • -m: 사용자의 홈 디렉토리 변경 시 기존에 사용하던 파일 및 디렉토리를 옮겨줌
      1. mkdir [변경할 사용자 홈 directory] -> 변경할 사용자 홈 디렉토리는 미리 존재해야 함.
      2. usermod -d [이동할 directory] -m [user] -> 새 디렉토리로 홈 디렉토리를 변경하며 기존 파일을 새 디렉토리로 이동
    • -g: 사용자의 그룹 변경
      • usermod -g [group] [user]
    • -G: 현재 그룹 외에 또 다른 그룹에 속하게 할 때 사용 -> 두 가지 이상의 그룹에 포함되게끔 하는 듯
    • -s: 사용자의 쉘 변경
    • -u: 사용자의 uid값 변경
    • -l: 사용자의 id 변경
      • usermod -l [새 id] [기존 id]
    • -L: 사용자 패스워드 lock
    • -e: 계정 만기일 변경
      • usermod -e [YYYY-MM-DD] [user]
  2. userdel (opt) [user]: 사용자 삭제 명령
    • -r: 사용자의 홈 디렉토리 및 메일 관련 파일까지 제거
      • userdel -r [usr]

rm -rf [directory]

그룹 관리

  1. groupadd (opt) [group]: 새 그룹을 생성하는 명령. 사용자를 등록하기 전 속할 그룹을 먼저 지정해줘야 함. 등록한 그룹은 /etc/group에 저장(그룹명: 패스워드: gid: 해당 그룹에 속한 사용자 목록)
    • -g [group 번호]: 특정 group 번호로 설정
      • groupadd -g 1500 sample1 -> sample1의 그룹번호를 1500으로 설정. 다음 그룹 생성 시 1501, 1502….와 같이 그룹번호가 설정됨.
    • -r: 0~499번대 사이로 group 번호 설정

/etc/gshadow

  1. groupdel [group]: 그룹을 삭제하는 명령(그룹에 속한 사용자가 있을 경우 사용자부터 제거 후 작업)


LINUX Share Tweet +1
/#disqus_thread