반응형

권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다.


사용자와 그룹의 정보를 담고 있는 파일

1. /etc/passwd : 계정 관련


id:password:UID:GID:comment:홈디렉토리:login shell



 2. /etc/group : 그룹 관련


id:password:GID:그룹에 속하는 사용자 계정



 3. /etc/shadow : 암호 관련


id:암호화된 password:마지막으로 패스워드 수정한 날짜(기준 1970년 1월 1일):패스워드 최소사용일:패스워드 최대 사용일: 경고메세지출력일:유예기간:계정만료일(패스워드 설정에 우선한다.)

 

> 계정 만료일은 기한이 정해져 있는 프로젝트에 참여하는 외부 인력에 주로 설정



 4. /etc/default/useradd : 내용 참조 id, password 설정


기본그룹,유예기간,계정만료일,login shell, 메일사서함 생성여부



 5. /etc/loing.defs :내용 참조 id, password 설정


메일사서함위치,패스워드최소사용일,패스워드최대사용일,패스워드길이,경고메시지출력일,UID와 GID범위지정,사용자홈디렉토리생성여부\사용자ID와 동일한 그룹 생성여부

 

(> 해당 파일은 내용이 길고 조금 복잡할 수 있어 나중에 따로 다루도록 하겠다)



 6. /etc/skel : 사용자 홈디렉토리에 생성되는 파일과 디렉토리


분석하기

1. /etc/passwd 에서 user a의 구성 분석하기

 

[   a      :x      :1002      :1002      :      :/home/a      :/bin/bash   ]

 

이 구성은 다음과 같이 나눌 수 있다. : 이것을 경계로 나누면 훨씬 수월할 것이다. 각 성분의 특징을 알아보자.


 

a  ID 계정
:x 패스워드
:1002 UID
:1002 GID
: comment
:/home/a 홈디렉토리 위치
:/bin/bash login shell

 * shell은 명령어 해석기라고도 하고(종류: sh, bash, zsh, csh), 이게 없다면 로그인 할 수 있는 방법은 없다.
 * 리눅스는 명령어를 적용하고 껏다키면 초기화된다. 따라서 영구 수정하고 싶다면 설정파일을 수정해야한다.


2. /etc/shadow 에서 user a의 구성 분석하기


[   a             :$6$~~~~~~~~~~XV70              :19424              :0             :99999              :7             :              :                :   ]

a 계정명
:$6$...XV70 패스워드 (비밀번호 없으면 !!, 암호화된 패스워드 /etc/login.defs SHA512
:19419 패스워드 마지막으로 수정한 날짜 (1970년 1월 1일 + 19419 = 오늘날짜)
: 패스워드 최소 사용 가능일(기간 동안은 패스워드 변경 불가)
:99999 패스워드 최대 사용일 (ex.30 )
:7 경고 메세지 출력일, 패스워드 만료전 7일전 부터 경고 메세지 출력
: 유예기간 (패스워드 만료 후 일정기간 동안 유예, 접속해서 패스워드 변경하면 사용이 가능)
: 계정의 만료(모든 패스워드 설정에 우선)
: 사용안함

 

공백 자리는 맨 마지막을 제외하고 명령어나 vi 편집기를 이용해 부여해 줘야 한다. 이는 나중에 따로 다뤄보도록 하겠다.


* 추가

UID : user ID

GID : group ID

이는 권한 부여하거나 제거할 때 중요하게 작용하니 알아두면 조금은 더 편해질지도 모르겠다.

반응형