Linux/리눅스 시스템 관리

01-01-06 사용자 환경설정 파일

easyfly 2022. 2. 10. 08:00
반응형

사용자 환경설정 파일

  • 사용자 계정과 그룹 정보는 /etc 디렉터리 이하에 존재한다.
  • 또한 useradd를 통해 사용자 추가 시 기본 설정이나 홈 디렉터리 구성이 필요한 정보를 담고 있는 설정 파일도 존재한다.
    구분 파일명 설명
    계정 및 그룹 설정 파일 /etc/passwd 사용자 계정의 아이디, 그룹 정보 등 계정 정보
    /etc/shadow 암호화된 패스워드 및 정책 설정 정보
    /etc/group 사용자 그룹의 기본 정보
    /etc/gshadow 사용자 그룹의 암호화된 패스워드 정보
    계정 환경 설정 파일 /etc/default/useradd useradd 명령을 사용할 때 기본 설정
    /etc/login.defs 로그인 수행 시 기본 설정
    /etc/skel 홈 디렉터리 생성 시 기본으로 제공할 파일

/etc/passwd

  1. 설명
    • 로그인할 때 필요한 UID, GID, 홈 디렉터리, 셸 등의 사용자의 계정 정보를 포함하고 있다.
    • 기본적으로 모든 사용자에 대하여 읽기 권한을 가진 환경 설정 파일이다.
    • 루트 사용자나 루트 권한을 획득한 사용자만 쓰기가 허용된다.
  2. /etc/passwd 파일 구조
    • 사용자명:비밀번호:UID:GID:사용자설명:홈디렉터리:셸

/etc/shadow

  1. 설명
    • 사용자 패스워드를 해시 알고리즘으로 암호화한 값과 패스워드와 연관된 여러 속성을 담고 있는 파일이다.
    • /etc/passwd 파일의 각 사용자들에 대한 암호 정보를 담고 있다.
  2. /etc/shadow 구조
    • 사용자명:패스워드:마지막변경일:패스워드최소사용일:패스워드최대사용일:패스워드만료경고일:유예기간:만료일
  3. 패스워드 필드 중 $id의 의미
    • $1$: MD5
    • $2a$: Blowfish
    • $2y$: Blowfish
    • $5$: SHA-256
    • $6$: SHA-512

/etc/default/useradd

  1. 설명
    • useradd 명령으로 사용자 생성 시 사용되는 기본 설정 값이 저장된 환경설정 파일이다.
  2. 기본값
    • /etc/default/useradd 파일을 직접 열어보거나 useradd 명령어의 -D 옵션을 사용하여 파일의 내용을 확인할 수 있다.
  3. 항목 설명
    • GROUP: 사용자가 속할 기본 그룹의 GID이다.
    • HOME: 사용자의 홈 디렉터리를 생성할 기본 디렉터리이다.
    • INACTIVE: 비밀번호가 만료되고 계정이 비활성화될 때까지의 일 수이다. -1은 제한이 없음을 의미하므로 계정이 항상 활성화되어 있다.
    • EXPIRE: 계정 만료일을 YYYY-MM-DD 형식으로 지정한다.
    • SHELL: 기본 로그인 셸을 지정한다.
    • CREATE_MAIL_SPOOL: 사용자 생성 시 메일 파일 생성 여부를 지정한다.

/etc/login.defs

  1. 설명
    • 쉐도우 패스워드 스위트(shadow password suite)를 위한 읽기 전용 환경설정 파일이다.
    • 패스워드 최대 사용일(PASS_MAX_DAYS), 패스워드 최소 사용일(PASS_MIN_DAYS), 패스워드 만료 경고일(PASS_WARN_AGE) 등을 설정할 수 있다.
  2. 형식
    • 한 줄에 하나의 환경설정을 기재할 수 있다. 환경설정은 '이름'과 '값'의 쌍으로 구성되고 공백으로 구분된다.
  3. 환경 설정
    • MAIL_DIR: 사용자의 메일 보관함의 위치
    • PASS_MAX_DAYS: 패스워드를 사용할 수 있는 최대일
    • PASS_MIN_DAYS: 패스워드를 기본적으로 유지하는 최소일
    • PASS_MIN_LEN: 패스워드 최소 길이
    • PASS_WARN_AGE: 패스워드 만료 전 경고일 수
    • UID_MIN: useradd 명령어를 통해 UID 자동 생성 시 최소값
    • UID_MAX: useradd 명령어를 통해 UID 자동 생성 시 최대값
    • GID_MIN: groupadd 명령어를 통해 GID 자동 생성 시 최소값
    • GID_MAX: groupadd 명령어를 통해 GID 자동 생성 시 최대값
    • CREATE_HOME: useradd 명령어 사용 시 홈 디렉터리 생성 여부 지정, -m 옵션을 사용하면 이 설정보다 우선
    • UMASK: 사용자의 umask 값을 설정, 없으면 022로 설정
    • USERGROUPS_ENAB: yes로 설정되어 있다면 userdel을 통해 사용자 삭제 시 그룹도 삭제된다. 단 그룹에 속한 사용자가 없어야 함
    • ENCRYPT_METHOD: 패스워드 암호화를 위한 기본 알고리즘 설정, DES, MD5, SHA256, SHA512 등의 값을 가짐
  4. 쉐도우 패스워드 스위트(shadow password suite)
    • 사용자와 구릅 관리와 관련된 명령어의 모음이다.
    • 각 명령어를 사용하여 /etc/login.defs의 관련 설정을 변경할 수 있다.

/etc/group

  1. 설명
    • 그룹에 속한 사용자를 관리하는 파일이다. 그룹에는 여러 사용자가 속할 수 있고, 한 사용자는 여러 그룹에 속할 수 있다.
    • /etc/passwd에 기재되어 있는 GID는 사용자의 주 그룹(primary group)을 의미하고 /etc/group은 사용자의 보조 그룹(secondary group)에 대한 정보가 포함되어 있다.
  2. /etc/group 구조
    • 그룹명:패스워드:GID:멤버목록

/etc/gshadow

  1. 설명
    • 그룹의 암호화된 비밀번호 정보를 포함하고 있다. 일반 사용자는 읽을 수 없고 루트 권한 사용자만이 접근이 가능하다.
  2. /etc/gshadow 구조
    • 그룹명:패스워드:그룹관리자:멤버목록
반응형