강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

SULINUX 시스템관리 2편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문



제목 : SULINUX 시스템관리 2편





ㅇ 제작 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 서버관리팀


ㅇ SULINUX  홈페이지 : www.sulinux.net

ㅇ 리눅스포털 홈페이지 : www.superuser.co.kr

SULinux 시스템 관리

주요내용

 

-. 시스템관리 기본 사항

-. 관리용 명령어 사용법


3. 사용자 고급관리


앞에서 살펴보았던 사용자 관리 명령어를 좀더 세부적인 옵션들과 고급 기술을 알아보도록 하자. SULinux는 사용자 관리를 쉽게 할 수 있는 명령어(su_usersetup)를 별도 제공한다. 별도 제공 명령어의 사용방법은 “6-3-2. 사용자 설정방법”을 참고하기 바란다. su_usersetup 명령어 사용전에 아래 내용을 이해하고 su_usersetup 명령어를 사용하면 더 많은 작업들을 더 쉽게 작업을 수 있을 것이다.


3-1. useradd 명령을 이용한 사용자 고급관리


형식 : useradd [옵션]


옵션

설    명

-D

사용자추가시 기본적으로 반영되는정보를 출력한다. 기본이 되는 파일은 /etc/default/useradd이다.

-g

기본 그룹을 지정한다. 예) useradd -D -g new_gruop_name or GID

-b

신규사용자의 홈디렉토리의 상위디렉토리를 변경한다.

예) useradd -D -b directory

-f

INACTIVE행과 관련된 옵션으로 패스워드 유효기간이 만료된 후에 언제이 계정을 사용할 수 없도록 할 것인지를 하루단위로 설정한다. 기본값은취소되지 않는다. 예) useradd -D -f number_of_day

-e

사용자의 계정이 만료되어서 사용할 수 없게 되는지를 설정한다. Shadow password를 쓸 때만 사용된다. 기본적으로는 계정이 만료되지 않는다. 관련파일은 /etc/login.defs이다.

예) useradd -D -e YYYY-MM-DD

-s

사용자의 기본쉘을변경할 때 쓰인다. 예) useradd -D -s /bin/csh


실제 사용의 예


1) -D 옵션 사용

 PIC37A.gif

설명

구 분

설    명

그룹=100

기본 Group, 시스템에서 처리하는 기본값으로 사용자의 이름으로 기본 그룹을 생성한다.

홈디렉토리=/home

홈디렉토리의 위치 (/home/username)

비활성화=-1

패스워드가 기한이 지난 뒤 사용자 계정이 무효가되기까지의 기간 (-1 상관없음을 뜻함)

만기=

패스워드 유효기간

쉘=/bin/bash

기본 Shell

SKEL=/etc/skel

Skeleton Directory. 사용자 생성에 필요한 파일이나 디렉토리가 있는 디렉토리


2) [root@localhost ~ ]# useradd -D –b /home2 –s /bin/csh

사용자의 홈디렉토리를 /home2로 바꾸고, 기본쉘은 /bin/csh로 전환한다. 변화된 내용은 /etc/default/useradd 파일에 기록된다.


3-2. passwd 명령을 이용한 사용자 고급관리


기본적으로 passwd명령은 패스워드를 부여하거나 패스워드를 변경하는 명령이지만 루트권한자는 좀 더 많은 기능을 할 수 있다. 대체적으로 계정을 사용하지 못하게 할 때 유용하게 쓰인다.


형식 : passwd [option] 사용자계정


옵션

설    명

-S

username에 대한 패스워드정보를 알 수 있다.

-l

사용자의 패스워드에 lock을 걸어 로그인을 막는다.

-u

사용자에게 걸려있는패스워드를 푼다.

-d

사용자의 패스워드를 제거한다. 패스워드없이 로그인이 가능하다.

-n

패스워드 변경까지의 최단 날짜의 설정

-x

현재 패스워드의 유효기간을 지정한다.

-w

패스워드 만료 전 경고 날짜를 지정한다.

-i

패스워드 만료된 뒤에 사용자 계정사용이 불가능하게 하기까지의 기간을 설정한다.


실제 사용의 예


1) [root@localhost ~ ]# passwd -S nemo

Changing password for user nemo

Password set, MD5 crypt. : 현재 패스워드 정보를 보여준다.


2) [root@localhost ~ ]# passwd -l nemo

Locking password for user nemo.

passwd: Success

설명 : 패스워드에 lock을 건다.

/etc/shadow 파일의 두번째 필드 맨 앞에 '!'가 붙는다.


3) [root@localhost ~ ]# passwd -u nemo

Unlocking password for user nemo.

passwd: Success.            설명 : 패스워드 lock를 unlock로 바꾼다.


4) [root@localhost ~ ]# passwd -d nemo

Removing password for user nemo.

passwd: Success

설명 : 패스워드가 제거되어 아이디만으로도 로그인이 가능하다. /etc/shadow 패스워드 필드의 내용이 전부 삭제된다.

다시 패스워드를 부여하려면 passwd 명령으로 부여해야한다.


5) [root@localhost ~ ]# passwd -n 1 -x 200 nemo

Adjusting aging data for user nemo.

passwd: Success

설명 : 현재 패스워드는 200일간 유효하고 다음 패스워드는 유효기간이 1일이다.


6) [root@localhost ~ ]## passwd -w 3 nemo

설명 : 만료 전 3일부터 경고를 보내준다.


7) [root@localhost ~ ]## passwd -i 10 nemo

설명 : 패스워드 만료된 뒤에 사용자 계정사용이 불가능하게 하기까지의

기간을 설정한다.


※ 주의점

'passwd -d 사용자계정'을 이용해서 사용자의 패스워드를 제거해서는 안 된다. 해당 사용자가 패스워드 없이 로그인 가능하기 때문이다. 또한 'passwd -S 사용자계정'하면 패스워드가 Locking이라고 정보를 보여주지만 정확한 의미의 Locking이 아니다. 실제로는 locked된 것이 아니라 제거된 것이므로 주의해야 한다.

3-3. UID 및 패스워드관련파일: /etc/login.defs


패스워드 제한 및 메일 디렉토리 정의 등 사용자 제한에 관여하는 파일이다.


파일 내용(/etc/login.defs)

항 목

설      명

MAIL_DIR /var/spool/mail

mail 디렉토리를 정의하였다.

PASS_MAX_DAYS 99999

패스워드 최대 사용 기간

PASS_MIN_DAYS 0

패스워드 변경최소 기간

PASS_MIN_LEN 5

패스워드 최소 길이

PASS_WARN_AGE 7

패스워드 소멸 이전 경고를 보여주는 날짜

UID_MIN 500

UID 최소값

UID_MAX 60000

UID 최대값

GID_MIN 500

GID 최소값

GID_MAX 60000

GID 최대값

CREATE_HOME yes

홈디렉토리 생성여부


3-4. usermod


사용자의 쉘, 홈디렉토리, UID등을 변경할 수 있는 명령


형식 : usermod [옵션] 사용자계정


옵션

설    명

-d

사용자의 홈디렉토리를 변경한다. 옮겨질 디렉토리는 미리 생성되어야 한다.

-m

사용자의 홈디렉토리를 변경하며 파일과 디렉토리도 같이 옮겨준다.

-g

사용자의 그룹을 변경한다.

-s

사용자의 쉘을 변경한다.

-u

사용자의 UID값을 변경한다.

-e

 계정만기일을 변경한다.

-c

사용자의 간단한 정보를 입력하거나 변경한다.

-G

추가로 다른 그룹에 속하게 할 때 쓰인다.

-l

사용자아이디를 변경한다.

-L

사용자의 패스워드에 LOCK을 걸어 로그인을 막는다.

-U

사용자의 패스워드에 걸린 LOCK을 푼다.


실제 사용의 예


1) [root@localhost ~ ]# usermod -d /home2/nemo -m nemo

nemo이라는 사용자의 홈디렉토리를 /home2/nemo 로 변경하고-m 옵션은 내용도 새로운 위치로 옮겨준다. 단, /home2 라는 디렉토리는 미리 생성되어 있어야 한다.


2) [root@localhost ~ ]# usermod -g 601 nemo

nemo라는 사용자의 그룹을 601로 변경한다. 속한 그룹은 변경되지만 기존에 미리 생성된 디렉토리나 파일들의 소유그룹은 변경되지 않는다.


3) [root@localhost ~ ]# usermod -s /bin/csh nemo

nemo라는 사용자의 쉘을 /bin/csh로 바꾼다.


4) [root@localhost ~ ]# usermod -u 500 nemo

nemo이라는 사용자의 UID를 500으로 바꾸라는 뜻이다. 이 때 홈디렉토리에 있는 사용자 소유의 모든 파일과 디렉토리도 자동으로 반영되나, 홈디렉토리 외부에 있는 자신의 파일은 chown명령으로 변경해야 한다.


5) [root@localhost ~ ]# usermod -e 04/30/05 nemo

nemo라는 사용자계정 만기일을 2005년 4월 30일까지로 지정한다.


6) [root@localhost ~ ]# usermod -c 'System Manager' nemo

nemo라는 사용자에게 'System Manager'라는 정보를 넣는다.


7) [root@localhost ~ ]# usermod -G wheel nemo

nemo라는 사용자를'wheel'이라는 그룹에 추가로 속하게 한다.


8) [root@localhost ~ ]# usermod -l prehee nemo

nemo라는 아이디를 prehee로 변경한다.


3-5. chage


사용자의 패스워드 만료에 대한 정보를 보여주거나 제한한다.


형식 : chage [옵션] 사용자명


옵션

설    명

-l

사용자계정에 대한 정보를 보여준다.

-m

패스워드 변경의 최소 날짜를 지정한다.

-M

패스워드 변경의 최대 날짜를 지정한다.

-I 무효일수

실제 패스워드에 LOCK를 설정하기까지의 날짜를 설정한다.

-E

계정이 만기되는 날짜를 지정한다. MM/DD/YY 형태로 지정한다.

-W

패스워드 변경을 요구하는 경고날짜를 지정한다.


실제 사용의 예


1) [root@localhost ~ ]# chage -l nemo

PIC37B.gif

nemo사용자의 패스워드및 계정 정보를 보여준다.


2) [root@localhost ~ ]# chage -M 100 nemo

패스워드 만기를 최대 100일로 한다.


3) [root@localhost ~ ]# chage -E 09/30/05 nemo

계정만기를 2005년 9월 30일로 지정한다.


3-6. pwck


/etc/passwd파일과 /etc/shadow파일을 검사한다.


pwck가 하는 역할

 

1) filed의 설정 검사

2) 사용자와 그룹아이디 설정 검사

3) 기본 그룹의 존재 유무 검사

4) 홈디렉토리가 존재 유무 검사

5) 로그인쉘이 존재 유무 검사

6) 패스워드가 없는 계정의 존재 유무 검사



관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,850 개
  • 현재 접속자 :  111 명