2013년 12월 3일 화요일

Solaris 사용자 계정 관리

자료출처: 솔라리스스쿨

관리자가 해야할 일 중에 가장 기본적이라고 할 수 있는 것이 바로 사용자의 계정을 관리하는 것이다. 관리자는 필요한 계정을 등록 해야하고 필요하면 삭제도 해야한다. 여기서는 이러한 계정 등록과 삭제에 관한 내용을 살펴볼 것이다.
1 사용자 계정 등록하기
사용자 계정을 등록하는 방법에는 여러 가지가 있지만 그 중에서 두 가지를 여기서 설명하겠다. 먼저 GUI환경에서 제공해주는 admintool이라는 명령어를 이용하여 등록이 가능하며 useradd라는 터미널 상에서의 명령어를 사용해서 계정을 등록할 수도 있다. 일반적으로 관리자는 admintool은 한 두 명의 사용자를 등록하기에는 편리하지만 여러 명의 계정을 등록하려면 아무래도 useradd명령어를 사용해서 하는 것이 더 편리하다.
1.1 admintool
admintool을 사용하는 것은 해당 메뉴를 보면 사용하기가 쉬울 것이다. Admintool을 수행하면 3개의 풀다운 메뉴가 보일 것이다.
File은 하위 메뉴로 종료(Exit)하는 기능의 메뉴가 있으며 Edit는 창에 있는 항목을 선택하여 추가(Add), 수정(Modify), 삭제(Delete)하는 기능의 메뉴가 있고
Browse 메뉴가 어떠한 기능을 제공하는지 다음 표에 나와있다.

  
메뉴기능
사용자사용자 추가, 수정 및 삭제
그룹그룹 추가, 수정 및 삭제
호스트호스트 추가, 수정 및 삭제
프린터프린터 추가, 수정 및 삭제
직렬 포트 직렬 포트 추가, 수정 및 삭제
소프트웨어패키지 관련 소프트웨어 추가, 수정 및 삭제
1.2 useradd
useradd는 터미널 모드에서 사용하는 명령어로써 자주 사용되는 옵션은 숙지하여야 한다.
useradd [-c comment] [-d dir] [-e expire] [-f inactive] [-g group]
        [-G group [, group...]] [-m [-k skel_dir]] [-u uid [-o]] [-s shell]
        [-P profile [, profile...]] login
useradd 명령어의 사용 예를 보자.
# useradd -c Superman -d /export/home/ebee -s /bin/ksh -g 100 -u 1001 -m ebee
일반적으로 사용되는 옵션을 이용해서 사용자를 등록한 예이다. -m 옵션은 홈 디렉토리가 존재하지 않을 경우 생성시키는 옵션이다. 모든 옵션을 생략하고 다음과 같이 간단히 사용자를 등록할 수도 있다.
# useradd ebee
이렇게 하면 단지 ebee라는 사용자 계정만 만들어질 뿐이고 홈디렉토리는 만들어지지 않는다. UID는 가장 큰 UID다음번호가 등록이 되며 GID는 1(other)로 등록이 된다. 그리고 쉘은 본쉘(/bin/sh)이 기본적으로 세팅이 된다.
등록해야할 사용자가 많을 경우에는 간단한 쉘 스크립트를 사용하여 사용자 등록을 자동적으로 해줄 수도 있다. /etc/passwd에 단순히 편집모드에서 사용자를 추가했을 경우에도 계정 등록이 가능하다 하지만 /etc/shadow에도 추가되어야 하므로 다음과 같은 명령어를 사용하여 /etc/shadow에도 추가해준다.
# pwconv
pwconv(/bin/pwconv)명령어는 /etc/passwd파일을 참조하여 /etc/shadow파일을 갱신해준다.
2 사용자 계정 삭제하기
유효기간이 지난 사용자나 필요 없는 사용자가 존재하면 가능하면 보안상 즉시 삭제를 해주는 것이 좋다. 삭제하는 방법은 마찬가지로 ‘admintool’을 사용할 수도 있지만 여기서는 ‘userdel’이라는 명령어를 사용하겠다.
# userdel [-r] login
-r 옵션은 사용자가 사용했던 홈 디렉토리까지 삭제하라는 옵션이다.
삭제 후 제대로 삭제되었는지를 확인하려면 /etc/passwd와 /etc/shadow를 확인해서 해당 login id가 존재하는지를 확인해보면 된다.
3 그룹 추가하기
그룹추가도 마찬가지로 적은 수의 그룹 관리이면 ‘admintool’을 사용해도 무난하다. 만일 그룹수가 많아지면 ‘groupadd’라는 명령어를 사용한다.
groupadd [-g gid [-o]] group
'-g gid'옵션은 GID(정수)를 써주는 부분이며 -o 옵션은 GID의 중복 사용을 허용해주는 옵션이다.
# groupadd -g 100 solaris
이렇게 solaris라는 그룹이 100이라는 GID로 등록이 되며 이는 /etc/group에 저장이 된다.
/etc/group이라는 파일을 보면 네 개의 필드가 존재한다. 첫 번째 필드는 그룹명, 두 번째 필드는 passwd, 세 번째 필드는 그룹의 실제 ID(GID), 네 번째 필드는 해당 그룹의 사용자 목록이다.
4 그룹 삭제하기
그룹 삭제는 ‘groupdel’이라는 명령어를 사용하면 된다. 사용법은 다음과 같다.
groupdel group
여기서 group은 그룹명을 적어주면 된다.
5 사용자 패스워드
패스워드 파일(/etc/passwd)은 사용자들에 대한 정보를 지닌 파일로 각 라인마다 7개의 필드로 구성되어 있다.
[사용자 계정]:[암호]:[사용자 ID]:[그룹 ID]:[주석]:[홈 디렉토리]:[로그인 쉘]
위에서 ebee라는 계정을 만들었을 때 /etc/passwd에는 다음과 같이 추가가 된다.
ebee:x:1001:100:Superman:/export/home/ebee:/bin/ksh
여기서 암호필드에 x라고 되어있는데 이는 shadow 파일을 사용하겠다는 의미이다. 예전에는 이곳에 사용자 암호를 암호화한 내용이 들어있었지만 보안상의 문제로 요즘에는 보통 /etc/shadow에 넣어둔다. 그리고 이 shadow파일은 일반사용자는 열람이 불가하게 기본 설정이 되어있다. 나머지 필드는 이해하는데 별 어려움이 없을 것이다. 참고로 주석(comment) 필드는 생략 가능하다. passwd파일에서 UID가 0이면 root(관리자)를 의미하며, UID와 사용자 계정은 중복해서 사용할 수가 없다. 또한 UID, GID는 항상 숫자로 나타내어야 한다.

홈페이지 jQuery 라이브러리에서 CVE-2019-11358 취약점 패치 여부 확인 방법

현재 홈페이지에서 사용 중인 jQuery 라이브러리가 CVE-2019-11358 취약점 패치를 적용했는지 확인하는 방법은 다음과 같습니다. 1. jQuery 버전 확인 홈페이지 소스 코드를 확인하여 jQuery 라이브러리 버전을 직접 확인합니다. 웹 ...