· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Linuxdoc Sgml/Virtual-Web

가상웹-미니-하우투

가상웹-미니-하우투

Dan Pancamo, pancamo@infocom.net www.infocom.net/~pancamo/

v1.0, 24 November 1995 Copyright 1995
이 문서는 리눅스하에 가상 웹 싸이트 설정의 필수요수를 기술한것이다.

1. 가상 웹 싸이트란 무엇인가?

월드 와이드 웹 (WWW) 서버는 일반적으로 하나의 컴퓨터는 하나의 웹 사이트에 대한 HTTPD 요청을 수행한다. 간단히, 컴퓨터당 하나의 WWW 싸이트가 설정된다. 많은 WWW 사이트들은 httpd의 요구로 진행되는 컴퓨터 자원 활용시간 이 적으며, 대부분의 컴퓨터 자원들은 사용되지 않은체 남게된다. 가상 웹 싸이트는 하나이상의 웹 싸이트가 한개의 프로세스를 쉽게 공유하게 한다. www.domain1.com과 www.domain2.com는 두개의 물리적 컴퓨터 디바이스를 요구 하지 않고, 하나의 디바이스에 위치하여 공통자원을 공유할수 있다.

일반적으로 소규모의 컴퓨터 시설이나, 회사에선 전용 웹서버 및 인터넷 연결 을 구비하지 않아도 된다. 비용의 경우 $10000 정도로 쉽게 시작할수 있으며, 한달에 $500-2500정도 소요된다. 소규모의 컴퓨터 시설일경우 가상 웹 공급자로 부터 바로 "임대"가 가능하다. 고객은 telnet이나 FTP 연결을 이용하여 웹 페이지를 보유할수 있다.

InfoCom Networks www.infocom.net/와 같은 웹 공급자로 부터 월 $75 와 같은 저렴한 가격으로 웹 스페이스를 공급받을수 있다. 몇몇 가상 싸이트는 애메모호한점이 해결 되었을지도 모른다. 그래서 가상 웹 싸이트 설정에 드는 비용은 전용 서버나 인터넷 연결보다 보다 두르러지게 싸다. 가상 웹싸이트는 "www.yourprovider.com/ businessname"과 같은 웹 주소 할당 설계에서 큰 잇점 을 가진다. 본질적으로 가상 웹 서버는 주소 변경없이 전용 웹서버의 설정이나 새 위치설정의 능력을 내포하고 있다. 웹의 URL의 변경은 당신의 싸이트 접속 빈도와 많은 사업상의 문서의 갱신에서 막대한 손실을 초래한다.

대부분의 웹사이트들는 www.domain1.com과 www.domain2.com가 IP로 나누어져 있다. 싱글 호스트로부터 다중 요청을 수용하기 위해서는, 가상 호스트는 양쪽 싸이트에 대한 요청에 답할 수 있어야한다. 이런 문제의 해결책으로 IP aliasing이란 방법이 있다. IP aliasing은 싱글호스트가 다중 IP에 대한 요청을 가능하게 한다. 가상 웹서버는 alias IP 능력을 갖추어야한다.

IP aliasing은 단지 가상 솔루션의 한 부분일 뿐이다. 도매인 네임 시스템 (DNS) 또한 www.domain1.com과 www.domain2.com으로 나누어 설정되어야 한다. 만약 domain1.com과 domain2.com이 새로운 도메인이라면, 둘다 Internic에 등 록되어 있어야 한다. 현재 Internic에 당신의 도메인을 등록하는데 연 $50가 소요 된다.

대부분의 가상 웹사이트들은 가상 메일이나, 모든 메일을 가상 도메인의 다른 유저나 유저들에게 전송하는 능력을 가지고 있다.

또한 가상 FTP나 "ftp.domain1.com"과 같은 표준 호스트 네임을 사용하는 FTP 능력이 웹 공급자로부터 형성되어 질수있다.

2. 어떤 패치 소프트웨어가 필요한가?

  1. 리눅스 버전 1.2.x는 the IPalias patch alias-patch-1.2.1-v1과 alias-net-tools.tar가 요구된다. 아직까진 1.3.X에서 지원하는지는 확신 할수 없다. ftp.mindspring.com/users/rsanders/ipalias/에서 the IPalias patch에관한 더 많은 정보를 얻을수 있다. IP alias 솔루션 대용으로 멀티플 더미 인터페이스 사용이 제안 되어 왔었 다. 더미 솔루션으로 사용하는 동안은 IP alias 솔루션보다 확연하게 나타 나지 않는다. 아파치나 더미 솔루션 사용에 더 많은 정보를 얻으려면, www.qosina.com/apache/virtual.html에 있는 Aram Mirzadeh의 가상 호스팅 인포메이션을 참조하세요. IPalias를 이용하여 새로운 alias를 추가하는 방법은 다음과 같다. :
            > /sbin/ifconfig eth0 alias www.domainX.com
    
    또한, IPalias 솔루션은 다른 다양한 플렛폼에서도 지원된다.
  2. NCSA 1.5, Apache, Spinner에서도 가상 호스팅을 지원한다. hoohoo.ncsa.uiuc.edu/docs/Overview.html www.apache.org/ spinner.infovav.se/

3. 무엇을 설정해야하나?

3.1 새로운 계정 만들기

가상 고객의 홈 디렉토리와 메일을 일반적 리눅스 계정으로 만든다.

3.2 NCSA 1.5와 Apache의 config 파일 설정

가상 호스트법은 계속 변하고 있다. Virtual Host Check the server's release notes를 더 상세히 지원하는 약간의 패치도 존재한다. NCSA 1.5와 Apache는 현재 가상 패치를 포함되어 있으며, Spinner는 가상 호스트를 지 원한다고 말한적 있다. 아파치 가상 패치는 srm.conf의 syntax에 따라 지원 고, NCSA 1.5는 가상 호스는 정의 방법에 따라 매우 유연적으로 지원된다.

           SubDocumentRoot www.domain1.com /usr/local/etc/httpd/docs/domain1
           SubDocumentRoot www.domain2.com /usr/local/etc/httpd/docs/domain2

NCSA와 아파치는 httpd.conf에 아래의 문장을 기입해야한다.

           <VirtualHost doamin1.com>
           ServerAdmin webmaster@domain1.com
           DocumentRoot /usr/local/etc/httpda/docs/domain1
           ServerName www.domain1.com
           ErrorLog logs/errors.domain1.com
           TransferLog logs/access_log.domain1.com
           

3.3 인터페이스 설정

앞에서 당신의 로칼 웹 서버의 /etc/rc.d/rc.local에 아래와 같이 IPalias 패치가 추가 설치 되었을 것이다.

           /sbin/ifconfig eth0 alias www.domain1.com
           /sbin/ifconfig eth0 alias www.domain2.com
           /sbin/ifconfig eth0 alias www.domainN.com

3.4 인터닉 등록

만약 새로운 도메인의 설정이나, 현재 도메인의 변경을 마쳤다면, 도메인 을 Internic에 등록해야 한다. 템플릿은 rs.internic.net/templates/domain-template.txt에서 발견할수 있다.

3.5 Named 설정

Named는 당신의 가상 도메인을 외부에서 식별가능하게 설정 되어져야 한다. 나는 DNS에 관해 전문가가 되라고는 주장하지 않는다. 제안에 대해선 항상 환영합니다.

예제 /etc/named.boot (x를 당신의 IP로 바꾼다)

              directory /etc/named.data
              primary           realdomain.com                  db.realdomain.co
m
              primary           xxx.xxx.xxx.IN-ADDR.ARPA        db.xxx.xxx.xxx
              primary           0.0.127.IN-ADDR.ARPA            db.local

              primary           domain1.com                     db.domain1.com
              primary           domain2.com                     db.domain2.com
              cache             .                               named.root

예제 /etc/named.data/db.domain1.com

             $ORIGIN com.
             domain1    IN      SOA     domain1.com. hostmaster.domain1.com. (
                        10134 43200 3600 604800 86400 )
                        IN      NS      ns1.realdomain.com.
                        IN      MX      10 mail.realdomain.com.
                        IN      MX      0 domain1.com.
           domain1.com. IN      A       xxx.xxx.xxx.xxx    ;www.domain1.com IP

             $ORIGIN domain1.com.
             ftp        IN      CNAME   domain1.com.
             www        IN      CNAME   domain1.com.
             mail       IN      CNAME   domain1.com.

예제 /etc/named.data/db.xxx.xxx.xxx

당신은 db.xxx.xxx.xxx에 당신의 현재 싸이트를 새로운 가상 도메인에 대한 역 추적을 포함해서 갱신 해야한다.

                xx              IN      PTR     www.domain1.com.
                xx              IN      PTR     www.domain2.com.

named 재실행; i.e. named.restart

3.6 가상 메일

당신의 가상 고객은 자신의 도메인으로 보내고, 다른 도메인으로 전송되어지 는 능력을 더 원하게 된다. sendmail.cf의 약간의 변화로 가능하다. 몇달에 걸쳐 다양하게 sandmail을 변경해 본 결과 최고의 방법은 각각의 새로운 가상 싸이트마다 sandmail.cf를 한번만 변경주면 된다는것을 알게 되었습니다.

센드메일 설정

makemap btree를 지원하는 것으로 현재의 sendmail을 바꾼다.

/etc/domainalias 작성하기

                *@domain1.com           localnet@realdomain.com
                *@domain2.com           townplaz@realdomain.com
                *@domainN.com           soracomp@realdomain.net

                webmaster@domain1.com   somuser@anotherhost.com
                jamison@domain2.com     anotheruser@somehost.com

the maped DB 파일 작성하기

                > makemap btree /etc/domainalias.db  < /etc/domainalias

the maped DB 파일 작성하기

호스트별 Cw 레코드 추가하기

                Cwdomain1.com
                Cwdomain2.com

the domainalias mapping 추가하기

Kdomainalias btree /etc/domainalias.db

Ruleset 98 추가및 변경

            ###################################################################
                ###  Ruleset 98 -- local part of ruleset zero (can be null)     ###
            ###################################################################

                S98

                R$+ < $+ . >          $1 < $2 >                         remove t
railing dots
                R$+ < $+ >            $: < > $(domainalias $1$2 $)      match us
er@address
                R< > $+ @ $*          $: < $1 > $(domainalias * @ $2 $) match *@
address
                R< $+ > * $*          $: < > $1 $2                      replace 
* with userid
                R < $+ > $+           $: < > $2                         bugfix
                R< > $*               $: $>3 $1                         and rewr
ite using S3

Sendmail 테스트

sendmail 설정 테스트로 새로운 sendmail.cf 변화를 검증한다. > sendmail -v -bv info@domain1.com 최종 목적지가 나타날것이다.

3.7 가상 FTP

현재까지 나는 아직 사용할만한 가상 FTP를 구하지 못했다. 몇몇의 패치가 존재하며, 패치 작업중이라고 알고 있다. 전정한 가상 FTP가 아닌 단지 /home/ftp/business/domain1과 같은 디렉토리만 만든다. (wu-ftp 로 가상 ftp 가 가능할것이다. 그에 대한 미니 하우투도 있다.)

만약 누군가 솔루션을 제공하고자 한다면, 여기에 추가할 것이며 더할나위 없이 기쁠것이다.

Arnt Gulbrandsen는 독립적인 FTP 서비스를 제공하는 The Troll Tech FTP Daemon을 포함한 ftpd를 다시 써냈다.

4. 가상 웹 정보에 대한 링크

hoohoo.ncsa.uiuc.edu/docs/Overview.html

www.apache.org/

spinner.infovav.se/

ftp.mindspring.com/users/rsanders/ipalias/

www.thesphere.com/~dlp/TwoServers/

hoohoo.ncsa.uiuc.edu/docs/setup/httpd/VirtualHost.html

ftp.dhp.com:/pub/linux/virtual-hosting


ID
Password
Join
Some men are discovered; others are found out.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2006-01-20 06:47:47
Processing time 0.0028 sec