본문 바로가기
operating system/linux

사용자 & 그룹 정보 파일 및 디렉토리

by hhhdangmoo 2022. 9. 18.
728x90
반응형

1. /etc/passwd

사용자의 정보를 가지고 있는 파일로 리눅스에 로그인 할 때 사용 된다.

파일 내용은 여러개의 필드로 구성 되어 있다.

 

이전 글에서 만들었던 사용자 a의 계정 정보를 확인해보자.

사용자 a의 계정 정보는 아래와 같다

a 사용자명
:x 암호화 된 password
:1000 사용자 uid
:1000 사용자 gid
: comment
:/home/a 사용자의 홈 디렉토리
:/bin/bash 실행할 프로그램 shell

 


 

2. /etc/shadow 

 - 사용자의 password 정보가 암호화 되어 있는 파일

 - 암호화 패스워드 및 계정의 유효 기간 등을 기록 한다

 

사용자 a의 password 정보를 확인해보자

/etc/password 파일 내용 또한 여러개의 필드로 구성 되어 있으며, 그 내용은 아래와 같다.

a:$6$lBJDCEws$:19254:0:99999:7:::
a 사용자명
:$6$lBJDCEws$ 암호화 된 password(역으로 풀 수 없음)
:19254 최근 password 변경일(1970년 1월 1일 기준 날짜 수)
:0 password 재설정을 위한 대기일 수
:99999 password 최대 사용일(유효기간) 기본값은 무제한임
:7 password 변경 경고 메세지 출력일
(만료일 몇일 전 부터 메시지를 출력 할 것인지 설정) 
: password 유예기간
(사용기간 만료 후 실제 계정 사용 불가능하기 까지의 시간)
: 계정 만료 기간(password 만료와 상관 없음)
1970년 1월 1일 기준의 날짜 수
프로젝트로 인한 외부 인력 계정에 설정 하되, 내부 인력에는 사용 지양
: 추후 사용 예정으로 예약 세팅 되어 있음
현재 사용 하지 않으므로 0으로 지정

 


 

3. /etc/group 

 - 사용자 그룹에 대한 정보가 저장 되어 있는 파일

 - /etc/group 파일을 직접 수정하거나 명령어를 이용하여 계정의 그룹에 대한 변경이 가능하다.

a:x:1000:
a 그룹명
:x 그룹 password
:1000 그룹 번호 gid
: 그룹 멤버 list
여러 멤버 존재 시 ,(콤마) 로 구분한다

 


 

4. /etc/skel 

사용자를 생성하면 해당 계정의 홈디렉토리에 세개의 숨김 파일이 생성 된다.

/etc/skel은 디렉토리이기 때문에 ls 명령어에 -al 옵션을 사용하여 숨김 파일을 확인해보자.

  • bash_logout : 로그아웃 시 실행 되는 파일
  • bash_profile : 로그인 시 실행 되는 파일
  • bashrc : bash_profile에 의해 실행 되는 파일

계정 생성 시 /etc/skel 디렉토리에 있는 파일들이 사용자 계정의 홈디렉토리에 복사 된다.

사용자 a의 홈디렉토리에 복사 된 것을 확인 할 수 있다.

그렇다면 /etc/skel 에 test.txt 파일을 생성 한 후 새로운 계정을 만들면 이것도 복사가 될까?

cat을 이용하여 /etc/skel에 test.txt 파일을 생성했다.

새로운 사용자 b를 생성한 뒤 홈 디렉토리를 확인 해보자.

test.txt 파일이 복사 된 것을 확인 할 수 있다.


 

5. /etc/login.defs 

 - 사용자 계정 설정과 관련 된 기본값을 정의한 파일

 - 새로운 계정을 생성할 때 반드시 참조하는 파일

PASS_MAX_DAYS password 최대 사용일(유효기간) 기본값은 무제한임
PASS_MIN_DAYS password 설정 후 최소 사용 기간
PASS_MIN_LEN password 최소 byte 수
PASS-WARN_AGE password 만료 경고일 지정
UID_MIN 생성 가능한 uid 시작 번호
UID_MAX 생성 가능한 uid 최대 번호
GID_MIN 새로 생성 되는 그룹의  gid 시작 번호
GID_MAX 새로 생성되는 그룹에서 지정 가능한 gid 최대 번호

 

 

3. /etc/default/useradd

사용자 계정 기본 값이 저장 되어 있는 파일. 

- /etc/default/useradd 에 입력 된 내용을 기본값으로 사용자 설정이 저장 됨

/etc/default/useradd 의 내용이다. 사용자를 생성하면 파일의 내용이 기본값이 되어 

사용자 group은 100이고, 디렉토리는 /home/사용자명 이된다.

GROUP 사용자 계정의 그룹 번호
HOME 사용자 계정의 홈디렉토리 /home/사용자명 으로 생성 된다
INACTIVE 패스워드 만료 후 유예기간
-1은 설정 되지 않았음을 의미 한다.
EXPIRE 계정 만료 날짜 ex) yyyy/mm/dd
정수형 입력 시 1970년 1월 1일 ~ 현재 까지의 일수
SHELL 프로그램 사용 시 실행 할 쉘
SKEL 사용자 생성시 필요한 파일 및 디렉토리가 있는 디렉토리
CREATE_MAIL_SPOOL mail file 생성 여부

 

/etc/default/useradd 파일을 직접 수정하여 사용자의 기본 그룹 정보와 계정 만료일 등을 설정 할 수 있다.

728x90
반응형