본문 바로가기
운영체제 (LNX,WIN)

LSMP 1.0.1 2010년 공개버전 (쉬운 리눅스 관리 프로그램)

by 날으는물고기 2011. 9. 1.

LSMP 1.0.1 2010년 공개버전 (쉬운 리눅스 관리 프로그램)

"(주)수퍼유저코리아 부설연구소 한국리눅스 연구소" 에서는 리눅스를 쉽고 편리하게 관리 할 수 있는 웹 및 TUI 기반의 리눅스 서버관리 프로그램을 개발하였습니다. 

1.1.1. LSMP (Linux System Management Project) 소개

1.1.1.1. LSMP 개요

LSMP(Linux System Management Project)는 리눅스 시스템을 쉽고 편리하게 관리하기위한 프로그램이다.

인터넷 사용이 활발해 짐에 따라 인터넷 컨텐츠를 제공하는 웹서비스의 비중이 커졌으며 웹서버를 구동하는 OS중 반 이상이 리눅스를 사용하고 있다. 그리하여 리눅스를 사용하는 부류도 전문 리눅스 사용자에서 일반 사용자로 그 분포가 확산되고 있는 실정이다. 이러한 일반 사용자는 리눅스 시스템 구축 후 기본적인 관리를 위해 많은 어려움을 격고 있다. 일반 사용자는 리눅스 시스템의 원격 접속을 위해 SSH 및 Telnet을 사용하며, 사용자 설정 등의 작업을 위해 명령어 기반으로 대부분의 작업을 진행하고 있다. 초보자뿐만 아니라 리눅스 시스템에 익숙하지 않는 사용자는 설정파일 위치 및 명령어를 정확하게 알지 못해 많은 어려움을 격고 있다.

이러한 리눅스 사용자들의 고충을 해결하기 위해 쉬운 인터페이스를 가진 리눅스 서버관리 프로그램이 필요하다. 리눅스 시스템의 사용자를 추가/삭제/편집하는 사용자관리, DNS서버의 설정파일 및 Zone파일 설정을 위한 DNS서버관리, DB서버의 사용자 및 DB를 추가/삭제하는 DB서버관리, 웹서버의 가상호스트를 추가/삭제/수정 하는 웹서버관리, 리눅스 시스템의 중요한 데이터를 백업 할 수 있는 백업관리, CPU및 메모리, HDD의 사용량을 실시간으로 보여주는 시스템 현황 모니터링 기능을 가진 웹 및 Text Box 기반 리눅스 시스템 관리 프로그램을 개발하는 것이 LSMP의 목표이다.

또 한 완성된 프로그램과 소스를 국제화시켜 공개SW발전을 위하여 세계적인 공개 SW 커뮤니티인 sourcefoge.net와 국내 커뮤니티에 프로젝트 개설 하여 지속적인 개발 및 커뮤니티 활성화를 시킨다.

 

1.1.1.2. 주요기능

LSMP는 다음과 같은 기능을 가진다.

1. 사용자관리 기능 : 리눅스 시스템의 사용자를 추가/수정/삭제 할 수 있는 기능. 메일 및 FTP 전용 사용자를 위한 쉘 권한 제거, 웹호스팅 사용자를 위한 통합 계정관리 등의 기능

 

2. DNS서버 관리 기능 : DNS서버의 도메인 추가/수정/삭제 기능을 개발하며, DNS의 기본 접근제어 등 많이 사용하는 기능에 대해 쉽게 사용할 수 있다. TTL 및 Serial 값은 옵션 형태로 작성하여 사용자의 고민을 최소화 시킨다.

 

3. DB서버 관리 기능 : DB서버의 DB 추가/편집/삭제, DB 사용자 추가/편집/삭제 기능. DB는 기본 MySQL을 지원 하며, DB서버의 기본 관리기능.

 

4. 웹서버 관리 기능 : WEB서버 가상호스트 추가/편집/삭제 기능. 웹서버는 기본 Apache를 지원하며, 가상호스트 및 접근 제어 기능.

 

5. 백업관리 기능 : 리눅스 시스템 중요 설정 파일 및 데이터 백업기능. 리눅스 시스템의 중요 설정파일(DNS, WEB, FTP, 사용자계정 등) 및 데이터(home, DB, 메일 등)를 압축 백업 할 수 있는 기능.

 

6. 시스템 현황 모니터링 기능 : CPU, 메모리, 부하, Disk 사용량 실시간 모니터링 기능 개발. 시스템 자원을 1초 단위로 볼 수 있는 기능

 

7. 웹 및 SSH 접속 환경에서도 친근한 인터페이스 : 웹 인터페이스를 불신하는 사용자를 위한 Text Box등의 편리하고 직관적인 인터페이스. 다음 그림과 같은 웹 인터페이스 및 TUI 기반의 직관적인 인터페이스를 모두 제공한다.

 

 

8. 기타 기능 : 수행내역 로깅기능, 자체 접근제어 기능, 서비스 모니터링 및 재시작 기능. 대부분 웹 인터페이스 관리 프로그램이 문제점이 작업한 내역을 알 수 없다는 것이다. 이러한 문제점을 개선하기 위해 수행내역을 로그로 기록한다. 주요 서비스를 모니터링 하고 재시작 하는 기능을 구현하여 원활한 시스템 관리를 할 수 있게 한다.

 

9. 국제화 : 리눅스 표준 국제화 방법인 gettext를 사용하여 기본 영어, 한국어를 지원하게 하며, 향후 타 언어 추가 시 PO파일 추가만으로 다국어 지원한다.

 

1.1.1.3. 다운로드 / 기술지원

1.1.1.3.1. 다운로드

소스 코드 및 프로그램은 다음 사이트에서 다운로드 할 수 있다.

https://sourceforge.net/projects/lsmproject/

 

1.1.1.3.2. 기술지원

본 프로그램에 대한 기술지원은 다음 사이트에서 받을 수 있다.

( 버그 및 개선점 또한 아래 사이트를 이용하여 제안 바람.)

https://sourceforge.net/tracker/?group_id=318897

또는 https://www.sulinux.net/bbs/board.php?bo_table=proj_lsmp

 

1.1.1.4. 설치 전 고려 사항

- 웹서버 : LSMP는 자체 웹서버를 제공한다. 웹 서버를 작동시키기 위해 별도의 포트가 필요하다. 서버에서 사용하지 않는 포트를 할당하고, 방화벽에서 접속 가능하도록 열어 두어야 한다. (TUI 인터페이스만 사용할 경우 웹서버는 필요하지 않음)

- python : LSMP는 현재 가장 많이 사용하는 python 2.4 와 호환을 가진다.

 

1.1.1.5. 라이센스

본 LSMP의 라이센스는 GPL을 따르며, 원문은 소스코드의 COPYING 파일을 참고하거나, 웹사이트(http://www.gnu.org/licenses/)를 참고하길 바란다.

 


1.1.1. LSMP 설치

1.1.1.1. 프로그램 설치

1.1.1.1.1. 프로그램 다운로드

 

- 프로젝트 사이트 방문 : https://sourceforge.net/projects/lsmproject/

프로젝트 사이트 방문 후 중간에 “Download Now"를 눌러 프로그램을 다운로드 받는다. 그런 다음 LSMP를 설치 할 리눅스 시스템에 업로드 시킨 후 다음 단계에서 설치한다.

 

 

1.1.1.1.2. 프로그램 설치

LSMP 설치는 다음과 같이 Unix 표준 설치법에 따라 진행한다.

tar xvfpz lsmp-1.0.1.tar.gz

cd lsmp-1.0.1

./configure --prefix=/usr/local/lsmp

make

make install

configure 단계에서 '--prefix' 옵션을 주어 /usr/local/lsmp 아래에 프로그램을 설치한다. (옵션을 주지 않으면, 기본 /usr/local/ 아래에 프로그램이 설치된다.)

 

 

1.1.1.2. 프로그램 기본 설정

1.1.1.2.1. 설정파일 편집

LSMP는 1개의 설정파일이 있다. 설정파일의 위치는 설치 시 지정한 디렉토리(본 매뉴얼을 따라 설치했다면, /usr/local/lsmp가 된다)아래 conf/디렉토리 안에 존재한다.

설정파일 : /usr/local/lsmp/conf/lsmp.conf

설정파일 ( lsmp.conf )

 

# LSMP Configuration file

[general]

insdir=/usr/local/lsmp

[lsmpd]

port=9694 # LSMP 웹인터페이스 포트

pwfile=pwfile # LSMP 웹인터페이스 비밀번호 저장 파일

daemon=True

logfile=lsmp_web.log # LSMP 웹로그 저장 파일

[bind]

bind_conf=/etc/named.conf # 네임서버 설정파일 경로

bind_named_dir=/var/named/chroot/var/named # 네임서버 zone 파일 위치

bind_nsDomain=ns.your-domain.com # 네임서버 도메인

[mysql]

mysql_root_pw=MySQLRootPasswd # MySQL root 패스워드

[httpd]

http_vhost_conf=/usr/local/apache/conf/extra/httpd-vhosts.conf

# Apache 가상호스트 설정파일

[status]

eth_dev=eth0 # 트래픽 모니터링 할 장치명

설정파일 ( lsmp.conf )은 위의 같은 항목이 있다. 모든 옵션은 '지시자=값’과 같은 형식으로 설정한다. 각 지시자는 섹션으로 나눠져 있으며 “[이름]”은 섹션을 의미한다. ‘#’으로 시작하는 줄은 주석으로 취급된다.

* 주의) 모든 설정파일 변경 후에는 lsmpd(LSMP 웹서버)를 재 시작해 주어야 한다. 방법: /usr/local/lsmp/sbin/lsmpdctl restart

 

 

지시자 정의

[general] insdir=경로

LSMP가 설치된 경로이다. 이 값은 프로그램 설치 시 정의된다.

예) insdir=/usr/local/lsmp

 

[lsmpd] port=포트번호

LSMP의 웹 인터페이스를 제공하기 위해 웹서버를 작동한다. 이 웹서버가 사용할 포트를 지정한다. 기본 9694이다. (포트 변경 후에는 방화벽에서 설정한 포트를 오픈해 주어야 한다.)

예) port=9694

 

[lsmpd] pwfile=파일이름

LSMP의 웹 인터페이스 접근 시 세션을 통한 사용자 인증을 받게 된다. 사용자 정보가 저장될 파일의 이름을 지정한다.

예) pwfile=pwfile

 

[lsmpd] daemon=[True|False]

LSMP의 웹 인터페이스 제공을 위한 웹서버(lsmpd)의 실행 형태를 정의 한다. 기본 데몬으로 가동되며, foreground형태의 가동도 가능하다.

예) daemon=True

 

[lsmpd] logfile=파일이름

LSMP의 웹로그를 저장하는 파일이름을 지정 한다.

예) logfile=lsmp_web.log

 

[bind] bind_conf=경로및파일이름

네임서버(bind)의 주 설정파일 위치 및 이름을 지정 한다.

예) bind_conf=/etc/named.conf

 

[bind] bind_named_dir=경로및파일이름

네임서버(bind)의 zone 파일 경로를 지정한다.

예) bind_named_dir=/var/named/chroot/var/named

 

[bind] bind_nsDomain=도메인

네임서버(bind)의 DNS서버로 사용할 도메인 이름을 지정한다.

예) bind_nsDomain=ns.sulinux.net

 

[mysql] mysql_root_pw=패스워드

DB서버(MySQL)의 root 비밀번호를 설정한다.

예) mysql_root_pw=MySQLRootPasswd

 

[httpd] conf_graph_process=경로및파일이름

웹서버(Apache)의 가상호스트 설정파일 위치 및 이름을 설정한다.

(대부분 httpd.conf 또는 httpd-vhosts.conf 이다.)

예) http_vhost_conf=/usr/local/apache/conf/extra/httpd-vhosts.conf

 

[status] eth_dev=네트워크디바이스명

LSMP에서 시스템 트래픽 상태를 확인하기 위해 모니터링 할 네트워크 디바이스명을 설정한다.

예) eth_dev=eth0

 

 

1.1.2. lsmp 사용법(TUI)

1.1.2.1. lsmp 실행

LSMP 설치 후 몇 가지 설정 후에 쉽게 리눅스 시스템을 관리할 수 있다. LSMP TUI인터페이스 명령어는 “lsmp"이며 이 명령어는 다음 경로에 존재한다.

 

/usr/local/lsmp/sbin/lsmp

 

명령어를 쉽고 편리하게 실행하기 위해서 다음과 같이 링크를 걸어 두기 바란다.

 

ln -s /usr/local/lsmp/sbin/lsmp /usr/sbin/lsmp

 

위와 같이 링크를 걸었다면, 시스템에서 다음 명령어를 수행하여 LSMP를 실행시킨다. ( 꼭 root 권한으로 실행하여야 한다.)

 

lsmp

위 스크린샷은 lsmp 실행 초기 화면이다. 방향키를 사용하여 메뉴를 선택할 수 있으며, 메뉴를 선택했다면, “엔터”키를 눌러 실행하거나, "TAP"키를 사용하여 “선택” 메뉴를 선택하여 실행할 수 있다. “종료”메뉴 또는 “ESC”키를 사용하여 프로그램을 종료 할 수 있다. 정리하면 다음과 같다.

 

방향키 : 항목선택 또는 메뉴간 이동

TAB, Shift+TAB : 메뉴간 이동

ESC : 뒤로 또는 종료

ENTER : 선택 또는 실행

 

 

1.1.2.2. LSMP 로그 확인

LSMP는 시스템에 영향을 미치는 명령에 대한 모든 활동은 다음 그림과 같이 로그에 저장하게 된다. LSMP 뷰어를 제외한 설정에 대한 모든 커멘드 및 읽고/쓰는 파일에 대한 로그는 다음 로그 파일에서 확인 할 수 있다.

 

/usr/local/lsmp/logs/lsmp.log

 

위 로그는 GUI, TUI 인터페이스에 관계없이 기록된다. 관리 툴의 버그 또는 사용자의 실수로 인한 시스템 이상이 생겼을 때 수행된 내역을 확인하여 쉽게 시스템을 복원할 수 있게 한다.

 

 

 


1.1.1. lsmp 사용법(GUI)

1.1.1.1. lsmpd 실행

LSMP 설치 후 몇 가지 설정하면 쉽게 리눅스 시스템을 관리할 수 있다. LSMP GUI인터페이스를 제공하기위해 웹서버가 필요하며, LSMP는 자체 웹서버를 가지고 있다. 웹 서버를 가동시키기 위해 다음 명령어를 내린다.

 

/usr/local/lsmp/sbin/lsmpdctl start

User: 사용자

New password: 비밀번호

Re-type new password: 비밀번호

Starting /usr/local/lsmp/sbin/lsmpdctl

 

위 명령어를 내리면, 초기 1회 사용자 및 비밀번호를 묻게된다. 이 사용자 및 비밀번호는 GUI(웹 인터페이스)접근을 사용자와 비밀번호로 사용된다. 꼭 기억해 두길 바란다..

 

echo "/usr/local/lsmp/sbin/lsmpdctl start" >> /etc/rc.d/rc.local

 

위와 명령어를 실행하여 시스템 시작 시 자동 시작되게 한다.

 

 

1.1.1.2. lsmpd 운영

lsmpd 시작 : /usr/local/lsmp/sbin/lsmpdctl start

lsmpd 정지 : /usr/local/lsmp/sbin/lsmpdctl stop

lsmpd 재시작 : /usr/local/lsmp/sbin/lsmpdctl restart

lsmpd 데몬 확인 : ps -ef | grep lsmpd

웹 로그파일 확인 : /usr/local/lsmp/logs/lsmp_web.log

LSMP로그 : /usr/local/lsmp/logs/lsmp.log

 

 

1.1.1.3. LSMP GUI(웹 인터페이스) 로그인

LSMP GUI에 접근하기 위해서는 웹브라우저가 필요하다. 웹 브라우저에 다음과 같이 입력한다.

 

http://서버주소:9694/

 

LSMP GUI에 접속하면 초기 lsmpd 실행 시 생성한 사용자와 비밀번호로 인증을 받아야 한다.

 

1.1.1.4. LSMP GUI 메인 인터페이스

LSMP GUI에 접속하면 초기에 다음 화면을 볼 수 있다.

좌측 상단 : LSMP의 관리기능을 보여주며, “클릭”하게 되면 우측에 나타난다.

좌측 하단 : 현 시스템 상태 CPU, 메모리, 디스크 상태를 보여준다.

LoadAVG : CPU의 경우는 1분 평균 부하

메모리 : 메모리 사용량( 전체 - free - cache - buffer )

디스크 : 모든 파티션 중 가장 사용량(%)이 많은 파티션의 사용량

우측 : LSMP의 기능 (기본은 시스템 모니터링)



출처 : 수퍼유저코리아
728x90

댓글