WebDAV 서버 구축하기

오늘 부산에 5년만에 큰 눈이 왔다. 모든 차들이 어쩔 줄 몰라 낑낑거리고 있다. 도착하니 주차장에도 거의 차가 없다. 지하 주차장에서 나온 내 차만이 또렷하게 보인다. 눈이 내리면 항상 춘천 생각이 난다.

img_0012-nih7bhwgqke3-2010-03-10-09-23.jpg

회사 임원진이 Microsoft Project Professional이나 Project Server에 대한 인식이 전무한 관계로 가장 저렴한 방법으로 프로젝트 관리 시스템을 구축하기 위해 지금까지 Microsoft Project 시리즈에 대한 트라이얼 버전을 사용해 왔다. 어느덧 트라이얼 종료 기간도 다가오면서 신규 구매를 하거나 다른 방법을 선택해야 겠으나 워낙 무지한 환경으로 인해 그냥(!) 포기했다. 하지만 개인적으로 업무 진행에는 반드시 프로젝트 관리 시스템을 필요하기 때문에 Merlin2나 Project X 등 Mac OS X 환경에서 구동되는 어플리케이션을 구입하려고 하다가 혹시나 싶어 예전에 사용하던 GanttProject를 다시 한번 사용해 보기로 했다.

일단 일반적인 사용에서는 별 문제가 없고 Microsoft Project나 GanttProject든 내가 사용하고자하는 범위에서는 큰 차이가 없다고 생각하고 사용하기로 했다. 그러나 우선 문제가 되는 것이 내 업무와 관련하여 프로젝트 진행 상황을 공유해야 할 대상에게 프로젝트 데이터를 나눠보는 일이었다. GanttProject에는 WebDAV 서버에 자료를 저장할 수 있는 기능이 있지만 예전에는 적당한 WebDAV 서버를 구성하지 못해 단순한 갠트 챠트 수준에서 프로젝트를 혼자 관리하는 수준에 머물렀다. 하지만 이번에는 내가 사용하는 서버의 가상화 시스템을 통하여 WebDAV를 구성하여 보다 우아하게 GanttProject를 이용해보기로 했다. 우선 이를 위해서는 WebDAV 서버를 만들어야 하는데, 이것도 처음 해보는 일이라 그리 만만치 않은 것 같다. 현재 시스템의 운영체제가 Ubuntu 9.10이며 가상화 시스템에서 Windows Server 2003 R2가 구동되고 있기 때문에 두 시스템 환경에 대해 모두 구성해보기했다. 우선 구글링으로 찾은 여러 사이트의 정보를 조합하여 아래와 같은 방법으로 작업을 수행하였다.

[Windows Server 2003 R2]

  1. 제어판에서 프로그램 추가/삭제를 실행한 후, Application Server > Detail > Internet Information Services(IIS) > Detail > World Wide Web Services > WebDAV Publishing 선택
  2. 프로그램 메뉴에서 Administrative Tools > Manage Your Server > Application Server > Manage This Application Server > Application Server > Internet Information Services(IIS) Manager > Local Computer > Web Service Extensions > WebDAV가 Allowed 상태로 되었는 지 확인 후,
  3. Local Computer > Web Sites > 설치 대상 Web Site > New > Virtual Directory 생성
  4. Virtual Directory Properties > 원하는 기능에 따라 Read, Write 및 Directory browsing 항목 선택
  5. Execute permissions: Script only 설정
  6. WebDAV용으로 지정한 실제 디렉토리의 권한 확인
  7. GanttProject로 WebDAV에 파일 저장 – http://localhost:portnumber/virtualdirectoralias/filename.xml

[Ubuntu Linux 9.10]

  1. Apache 웹서버 설치 – aptitude install apache2
  2. WedDAV 모듈 활성화 – a2enmod dav_fs ; a2enmod dav ; a2enmod dav_lock
  3. 아파치 서버 재시작 – /etc/init.d/apache2 restart
  4. Virtual Host 생성을 위해 임의 디렉토리(/var/www/web1/roll)를 생성하고 소유권을 www-data로 지정한다 – chown www-data /var/www/web1/roll
  5. 디렉토리 지정 사항을 /etc/apache2/sites-available/default 파일에서 다음과 같이 수정한다.

        NameVirtualHost *
        <VirtualHost *>
                ServerAdmin username@localhost
                DocumentRoot /var/www/web1/roll/
                <Directory /var/www/web1/roll/>
                        Options Indexes MultiViews
                        AllowOverride None
                        Order allow,deny
                        allow from all
                </Directory>
        </VirtualHost>

  1. 변경된 설정 사항을 아파치 서버에 반영한다 – /etc/init.d/apache2 reload
    • 오류 발생 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName – /etc/apache2/apache2.conf 파일에 ServerName localhost 추가로 해결
    • 오류 발생 NameVirtualHost *:80 has no VirtualHosts – /etc/apache2/ports.conf 파일에서 NameVirtualHost *80 항목을 코멘트처리하여 해결
  2. Virtual Host를 WebDAV용으로 지정하기 위해 WebDAV용 패스워드 파일 및 사용자(spix) 생성 – htpasswd -c /var/www/web1/roll/passwd.dav spix
  3. 패스워드 파일에 관련한 사항을 /etc/apache2/sites-available/default 파일에 첨부한다.

        Alias /webdav /var/www/web1/roll        <Location /webdav/>
                DAV On
                AuthType Basic
                AuthName “webdav”
                AuthUserFile /var/www/web1/passwd.dav
                Require valid-user
        </Location>

  1. 생성된 패스워드 파일의 소유를 root와 www-data로 지정하고 권한을 640으로 지정한다 – chown root:www-data /var/www/web1/passwd.dav ; chmod 640 /var/www/web1/passwd.dav
  2. WebDAV를 위한 디렉토리의 권한과 형태를 지정한다 – chmod -R 0777 /var/www/web1/roll ; chown www-data:www-data /var/www/web1/roll
  3. 아파치 서버를 재구동하여 WebDAV 설정을 적용시킨다 – /etc/init.d/apache2 restart
  4. WebDAV 클라이언트 cadaver를 이용하여 WebDAV 구동 상태를 점검한다 – cadaver http://localhost/webdav
  5. 사용자 및 패스워드가 오류 입력되면 정상 상태를 확인할 수 있다.

이상과 같은 방법은 Windows Server와 Linux 환경에서의 WebDAV 서버 구축을 마치고 GanttProject를 이용하여 파일을 서버로 저장할 수 있게 되었다. 역시나 해보면 크게 어려울 것이 없는 작업이지만 항상 느끼는 것이 무언가를 시도한다는 것은 정말 귀찮은 일임에 분명하다. 이제 이 방법으로 업무가 조심이라도 효율적이길 바랄뿐이다.

Advertisements

WebDAV 서버 구축하기”에 대한 1개의 생각

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중