SULinux 덕분에 어렵게만 느껴졌던 Linux에 한 발 더 가까이 다가갈 수 있게 되었고 Blog나 Homepage도 직접 Server에 설치해서 운영할 수 있게 되었습니다. 사용하기 편리한 SULinux의 사용법을 소개하고자 합니다.
SULinux에 대한 정보는 http://sulinux.net 에서 확인하시기 바랍니다.
1. Domain
Web Server를 쓰기 위해서는 Domain이 필요합니다. 유료 Domain과 무료 Domain으로 나뉘는데 여기서는 무료로 Domain을 배포해주는 dnip.net에서 만들도록 하겠습니다.
Name Server 용 Domain을 먼저 만들어 보겠습니다. 우선 dnip.net로 접속하게 되면 위와 같은 화면이 보입니다. 상단에서 Signup Menu를 Click한 후 화면 하단에 'I Agree'을 누르면 아래와 같은 화면이 보입니다.
User ID/Hostname 란에 여러분이 원하시는 Domain을 적어 주세요. 물론 이미 등록되어 있는 도메인이면 등록 불가능합니다. Email Address 와 Name (Real Name) 란은 알아서 채워 넣으시고 Service Type 에서 Sub Nameserver ( ns.xxx.dnip.net ) 부분에 선택해 주세요.
IP Address 는 Server가 받는 IP Address를 적어 주시면 됩니다. 일단은 고정 IP라는 전제 하에 설명을 계속 합니다. 나머지 항목들은 그냥 넘어가도 됩니다. Register를 Click 하면 ns.[domain name].dnip.net 요런 형식의 Name Server 용 Domain이 만들어집니다.
유동 IP의 경우는 Homepage 상단의 Update Utility를 Click해서 Page 하단에 Link되어 있는 DNIP Client 0.2라는 Utility를 사용하시면 됩니다. 사용법은 아주 간편하니 굳이 설명을 안 해도 될 것 같아서 그냥 넘어가겠습니다.
우리는 보통 한 대의 System에 Name Server, Web Server, FTP Server, Mail Server 등을 함께 설치해서 사용을 하는데 Name Server를 운용하기 위해서는 Domain 등록 대행 기관을 통해서 여러분 Server의 IP를 등록하여 Domain을 유료로 할당 받아야 가능합니다. dnip.net 을 이용하면 무료로 Name Server용 Domain을 얻을 수 있고 여러분 Server의 IP와 연결이 되기 때문에 지구상의 모든 Host Computer들은 dnip.net에 구축된 여러분의 Name Server를 경유하여 Web Server에 Setting되어 있는 Virtual Host 주소를 찾아갈 수 있게 되는 겁니다. 결국 Name Server는 해외에 있는 dnip.net Server를 빌려서 쓰는 것이므로 여러분의 Web Server와는 별도의 System에서 동작하게 되는 구조인 것입니다.
Name Server용 Domain 준비가 다 되었으면 이제 여러분이 실제로 운영하게 될 Homepage나 FTP Server용 Domain을 하나 더 만들어 줘야겠죠. Address Only 항목에 체크해 주시고 Name Server용 Domain과는 다른 이름의 Domain을 같은 방법으로 만들면 됩니다.
여기까지 따라 오셨으면 Domain 준비는 끝난 겁니다. 이제 본격적으로 SULinux에 댛패 알아보도록 하겠습니다
2. Name Server Setting
SULinux의 설치와 APM 설치 방법은 Site에서 제공하는 Manual에 자세히 나와 있으니 참고하시고 여기서는 Setting과 관련된 내용만을 다루겠습니다.
vi 편집기로 su_util.cfg 파일을 열어줍니다.
Prompt에 'vi /root/bin/conf/su_util.cfg' 라고 입력하세요. vi 편집기를 열어 내용을 수정하기 위해서는 i나 a를 눌러주면 됩니다. 그러면 수정 가능한 상태로 변합니다. Cursor를 이동시켜 34행과 38행을 아래와 같이 수정해 줍니다.
dns_domain = ns.domain.dnip.net
dns_admin_mail = root.doman.dnip.net
dnip.net 에서 만들었던 Name Server용 Domain 정보로 고쳐 주면 됩니다. 나머지 고칠 부분들은 SULinux Site에서 제공하는 Manual에 다 나와 있으니 참고하세요. su_util.cfg 내용을 수정한 뒤 내용을 저장하기 위해 ESC를 누른 뒤 ':wq'라고 입력하고 나오면 내용이 수정되어 저장됩니다. 변경한 정보를 적용시키기 위해 Prompt에 'system_check_init -all'을 입력하세요.
그 다음으로는 /etc/sysconfig/network 을 편집해 줘야 합니다.
Prompt에 'vi /etc/sysconfig/network'라고 입력하시고 a를 눌러 편집 모드 들어가셔서 아래와 같이 내용을 고치세요.
NETWORKING=yes
HOSTNAME=Name Server Domain Address
변경했으면 ESC를 누른 뒤 ':wq'라고 입력하여 저장하고 빠져 나옵니다. 위의 변경 작업들이 모두 끝났으면 Prompt에 Reboot라고 입력하여 Server를 재부팅해 줍니다. 그렇게 되면 Prompt가
[root@ns ~]#
이렇게 기존에 localhost라고 나왔던 부분이 ns로 바뀌어 나옵니다.
3. Apache 설정 (http.conf)
vi 편집기로 httpd.conf을 열어 줍니다. Prompt에 아래와 같이 입력합니다.
[root@ns ~]# vi /etc/httpd.conf
Page Up/Down 키를 이용하면 Cursor를 위 아래로 팍팍 이동시킬 수 있습니다. Cursor 이동 뒤에 a나 i를 눌러 편집 모드로 들어가서 수정합니다. 369행을 수정해 줍니다.
기본적으로 UserDir public_html로 설정되어 있는데 편의상 짧고 작업하기 편하도록 www로 고치는 겁니다. 이렇게 고치면 앞으로 생성하게 되는 모든 계정 Directory는 '/home/계정명/www' 구조를 갖게 됩니다. www Directory 내에 Web Page File들을 집어 넣으면 되는 것입니다.
변경 내용을 저장하고 빠져 나오기 위해 ESC를 한 번 누르고 ':wq'를 입력하고 나옵니다. 그 다음 Apache를 재 실행합니다. Prompt에 아래와 같이 입력합니다.
[root@ns ~]# /etc/init.d/httpd restart
여기까지 기본 설정이 모두 끝났습니다. 다음으로 계정을 생성하여 계정 Directory를 Domain과 연결하여 Web Browser에 Homepage를 직접 띄워 보겠습니다.
4. 계정 만들기
자, 이제 계정을 하나 생성해 봅시다. Apache에서 특별히 건드린 것이 없다면 계정 Directory는 '/home' Directory 하위에 생성됩니다.
SULinux는 SSU(Superuser Server Utility)라는 Script Package가 있는데 이 SSU를 통해 계정 생성 및 관리를 아주 손쉽게 할 수 있습니다. su_usersetup 명령어로 계정 Directory와 DB가 자동으로 생성됩니다. 이 명령어를 사용하기 전에 root 권한으로 MySQL을 관리하기 위해 'root' 암호를 설정해야 합니다. 그렇게 안 하고 su_usersetup 명령어로 먼저 계정을 생성하면 중간에 MySQL 'root' 암호를 묻는 과정이 나올 때 막히게 됩니다.
MySQL의 'root' 암호를 생성하기 위해 다음과 같이 입력합니다.
[root@ns ~]# mysqladmin -u root password 비밀번호
이제 su_usersetup 명령어를 사용해 봅시다.
[root@ns ~]# su_usersetup
이렇게 입력을 해 보세요. 그럼 su_usersetup 명령어에 관한 도움말이 나옵니다. su_usersetup 명령어 뒤에 각종 옵션을 붙여 주어 계정을 생성해 주면 되는 겁니다. 예를 들어 abc 라는 계정을 생성하고 계정 암호는 1234로 하고 이 계정으로 운영하고자 하는 Homepage의 도메인 주소가 abc.dnip.net이라고 한다면
[root@ns ~]# su_usersetup --add home abc 1234 abc.dnip.net
위와 같이 입력해 주면 MySQL 'root' 암호를 물어 봅니다. 아까 먼저 생성 안 했으면 당연히 여기서 막히겠죠. 암호를 입력하면 아래와 같이 Message들이 뜨면서 계정 생성 작업이 완료됩니다. 그 다음 해 주어야 할 작업이 계정 Directory의 소유권과 허가권(Permission)을 변경해 주어야 합니다. 소유권 및 허가권에 대해 또 설명하자면 이 Post의 본래 취지였던 초보자들도 쉽게 따라 하기 위한 길라잡이 역할에서 벗어나게 될 것 같아서 본격적인 설명은 피하도록 하겠습니다. 그냥 제가 알려주는 대로 따라하기만 하면 됩니다.
아래처럼 입력하여 소유권과 허가권을 변경해 주세요.
[root@ns ~]# chown -R abc:abc /home/abc
[root@ns ~]# chmod -R 755 /home/abc/www
허가권은 755로 해 놓았지만 Zeroboard나 Tattertools를 설치하여 쓸 경우 다시 변경해 줘야 할 것입니다. Tattertools의 경우는 Tattertools가 설치된 Directory를 777로 해 주어야 합니다.
이제 계정 생성 작업이 완료되었습니다. '/home/abc/www' Directory에 test.html이라는 Web Page File을 하나 올려보시고 잘 접속되는지 확인해 보려면 Web Browser 창에 http://Server IP/~abc/test.html
요렇게 입력해서 확인해 보시면 됩니다.
Server에 File을 Upload 할 때에는 알 FTP 같은 FTP Client Program을 쓰시면 편리합니다.
5. Domain Connection
Prompt에 다음과 같이 입력하여 Apache Configuration File 인 'httpd.conf' File을 vi 편집기로 엽니다.
[root@ns ~]# vi /etc/httpd.conf
'httpd.conf' File 내용이 나옵니다. 최하단으로 Cursor를 이동시킵니다. 'Page Up/Down' 를 쓰면 팍팍 이동 가능합니다.
Virtual Host 설정 부분이 나옵니다. 아까 생성했던 abc 계정에 대한 Virtual Host 정보가 추가 되어 있습니다. 그냥 확인만 하는 겁니다. 내용을 건드릴 필요는 없습니다. vi 편집기를 닫아줘야 되겠죠. ':q!'를 입력하시면 변경 내용을 적용하지 않고 그대로 빠져 나올 수 있습니다. vi 편집기에서 ':q!' 명령어는 앞서 배웠던 ':wq'의 반대 기능을 수행하는 것입니다.
다음으로 Prompt에 아래와 같이 입력해서 su_domain 명령어 사용법에 대해 알아 볼까요?
[root@ns ~]# su_domain
사용법은 생성했던 abc 계정에 dnip.net에 등록했던 Blog 혹은 Homepage 접속용 Domain (Name Server용 Domain이 아님)으로 설정해 주면 됩니다. 아래와 같이 Prompt에 입력하세요.
[root@ns ~]# su_domain --add abc.dnip.net [Server IP]
이렇게 해 주면 이제 abc.dnip.net이라는 Domain으로 접속하면 abc 계정이 있는 Home Directory인 'home/abc/www' 내의 Page File들이 뜨게 되는 것입니다.
Server에 계정을 여러 개 생성해서 각 계정마다 다른 Domain을 연결하고 싶다면 지금까지 한 작업들을 그대로 반복하시면 됩니다. dnip.net 에서 Homepage용 Domain만 추가로 등록해서 만들면 되겠죠. 그렇게 해서 생성된 모든 계정의 Domain은 맨 처음 등록했던 Name Server 용 Domain을 경유하여 전 세계의 모든 Host 들에게 보여지게 되는 것입니다.
수고하셨습니다. 계정 생성 및 계정에 Domain 연결 작업만 해 주면 SULinux에서의 기본적인 Homepage 설정은 모두 끝난 것입니다. 유지 보수에 대해서는 여러분들이 직접 Linux 관련 서적이나 Internet에 떠도는 자료들을 구하셔서 익히시기 바랍니다.
'Operating System > Linux' 카테고리의 다른 글
| Ctrl+Alt+Del 사용하지 않는 법 (0) | 2010/10/09 |
|---|---|
| Linux Core Dump 확인하기 (0) | 2010/04/26 |
| Linux Console Command (File Management) (1) | 2008/07/17 |
| Web에서 Linux Server 관리하기 - Webmin (0) | 2007/11/16 |
| Linux Directory 구조 (0) | 2007/11/11 |
| SULinux로 손쉽게 서버를 구축하자 (0) | 2007/11/02 |
| Apache Tuning 정리 (0) | 2007/06/22 |
| Linux 2.4 Packet Filtering How-To (iptables와 ipchains의 차이점) (0) | 2007/06/22 |
| Linux 2.4 Packet Filtering How-To (iptables 사용하기) (0) | 2007/06/22 |
| Linux 2.4 Packet Filtering How-To (Packet이 Filter 지나는 경로) (0) | 2007/06/22 |
| Linux 2.4 Packet Filtering How-To (Packet Filtering Guide) (0) | 2007/06/22 |