본문 바로가기
Linux

2. Linux 기본 명령어(사용자 파일)

by Choraengyi 2016. 10. 27.

이번에는 명렁어 대신에 사용자와 관련된 파일을 알아보겠습니다. 리눅스 대부분의 파일은 텍스트파일에 저장되기 때문에 관련파일에서 정보를 읽어오고 저장됩니다.


리눅스의 사용자목록, 패스워드 정보 등을 확인할 수 있습니다. 리눅스 시스템을 이해하는데 도움이


될 것 같아 파일에 대해 알아보겠습니다. 


1. /etc/default/useradd

해당 파일은 useradd명령으로 계정생성시 기본적으로 적용되는 설정이 들어있습니다. cat명령으로 확인해도 되고, useradd -D 명령으로도 확인 가능합니다.


주석달면서 설명하는게 편할거 같아서 텍스트를 복사해왔습니다.


root@kali:~# useradd -D
GROUP=100                                                                    #기본적으로 속하는 그룹, 100은 GID를 뜻함 보통(users라는 그룹임)
HOME=/home                                                                 #홈디렉터리의 위치, 생성시 사용자명으로 하위디렉터리가 생성됨.
INACTIVE=-1                                                                    #패스워드 만기일 지난 후 로그인을 막기까지 기간(-1:설정안됨, 0:없음)
EXPIRE=                                                                          #계정유효기간 "yyyy-mm-dd"
SHELL=/bin/sh                                                                 #할당되는 shell                                                                    
SKEL=/etc/skel                                                                 #제공되는 파일 및 디렉터리가 들은 디렉터리
CREATE_MAIL_SPOOL=no                                                #메일파일을 생성할 것인지 지정하는 항목(메일파일은 /var/spool/mail/사용자 디렉터리에)



2. /etc/passwd


해당파일은 사용자의 목록을 저장하고 있다. ":"을 구분자로하며 7개의 필드가 있다.

tail로 출력해 보았습니다.

기본구조는


사용자명 : 암호 : UID : GID : 정보 : 홈 디렉터리 : 사용셸


이렇게 되어있다. 2번째 암호필드는 x로 되어있는데 암호는 /etc/shadow에서 암호화해 관리하므로 x로 표시된다.


5번째 정보필드는 사용자에대한 추가적인 정보가 기록된다.



usermod -c 옵션으로 설명을 추가해서 조회해 보았습니다. 이런식으로 추가적인 설명이나 정보를 보여줍니다.



3. /etc/shadow


해당파일은 /etc/passwd의 두번째 필드 패스워드를 암호화하여 관리합니다. 마찬가지로 ":"으로 구분하며 9개의 필드가 있습니다.


참고로 이파일은 root계정만 접근이 가능합니다.



조회해보면 이렇습니다. 뭐가 되게 긴데 일단 기본 형식입니다.


사용자명 : 암호 : 바꾼날 : 최소사용 : 최대사용 : 경고기간 : 불가능까지 기간 : 불가능되는 날 : 공백


*좀많네요.. 일단 사용자명은 건너뛰고 암호는 알고리즘마다 다릅니다. 저거풀어서 알아보고 싶으면 다른방법을 찾아봐야겠죠? 일단 제꺼는 $6로 시작되니


SHA-512알고리즘을 사용합니다.


*세번째필드 바꾼날은 최근 암호변경날에서 1970년 1월 1일을 뺀 날짜수 입니다.


*네번째 최소사용은 변경 후 이정도는 사용해야 패스워드를 바꿀 수 있다고 정한 날짜 수 입니다.


*다섯째 최대사용은 패스워드 만기일입니다.


*여섯째 경고기간은 만기전에 경고하는 날짜입니다. 3이면 만기 3일전에 경고 메세지가 뜹니다


*일곱째 불가능까지 기간은 패스워드 만기기간이 지나고 로그인 불능으로 변할때 까지의 기간입니다. 쉽게 말해 10월 26일 만기일인데 이 필드가 5로 되있으면


31일까진 로그인불가능이 아니라는 소립니다.


*여덜째 불가능되는날은 말그대로 로그인이 불가능하게 되는날로서 세번째 필드와 마찬가지로 1970년1월1일을 뺀 날짜수 입니다.


*아홉째 공백은 추가적인 기능을 사용하기위해 남긴 예약공간입니다. 걍 공백입니다 지금은.


4. /etc/login.defs


해당파일은.. 음 여러 로그인관련 정보가 있다고 보시면 됩니다. 대략적으로 알려 드리면 메일 디렉터리지정, 패스워드관련(기한, 길이 등)설정, UID와 GID의


범위 지정, 암호화 알고리즘 지정, 홈디렉터리생성 여부, umask값 지정 등등.. 여러 설정을 하는데 cat으로 조회해보시면 대강 설명등이 나와 있기 때문에


다음기회에 설명하겠습니다..ㅋㅋ





사용자 관련파일을 대강 보았습니다.

728x90
반응형

댓글