WebDAV

거래처의 파일관리를 위해서 여러가지 방법들을 찾아보고 공부하고 있습니다. 일단 라이센스 문제등이 있어 리눅스(우분투)계열을 이용할 방법을 찾아보고 있고 그중 하나인 WebDAV를 이용해봅니다.

Nginx 웹서버 설치

$ sudo apt install nginx nginx-full

WebDAV 디렉토리 생성 및 권한설정

$ sudo mkdir /var/www/html/dav

$ sudo chown www-data:www-data /var/www/html/dav

Nginx 설정

/etc/nginx/sites-available/default 파일이나 WebDAV를 적용하고 싶은 도메인 설정파일의 server 내에 다음 내용을 추가합니다.

charset utf-8;
#WEBDAV
location /webdav {
    autoindex on;
    alias /var/www/html/dav;
    auth_basic "Restricted Access";
    auth_basic_user_file /etc/nginx/.htpasswd;
    client_body_temp_path /var/www/html/dav/temp;
    dav_methods PUT DELETE MKCOL COPY MOVE;
    dav_ext_methods PROPFIND OPTIONS;
    dav_access user:rw group:rw all:r;
}

설정값으로는 다음과 같은것들이 있으니 적절히 조합해 사용하면 됩니다.

PROPFIND 웹의 파일 목록과 속성을 검색
PROPPATCH 리소스의 속성을 변경
MKCOL 디렉토리(폴더)를 생성
COPY 파일복사
MOVE 파일이동
LOCK, UNLOCK 파일의 OVERWRITE 방지를 위한 락
OPTIONS 서버가 지원하는 메소드를 출력
DELETE 리소스와 컬렉션(파일과 디렉토리)을 삭제

WebDAV 사용자 추가

$ sudo htpasswd -c /etc/nginx/.htpasswd userid

htpasswd 실행명령이 없으면 apache2-utils 설치한 후 다시 명령을 실행 해 사용자를 추가합니다.

Nginx 재시작

$ sudo systemctl restart nginx

WebDAV 접근

http://IP주소/webdav 이후 설정한 ID/PASSWD

레지스트리의 값을 조정해 네트워크 드라이브로 연결해 사용하는것도 가능하다고 합니다. 다만 초보자가 접근하기 쉬운게 아니라서 다른 방법으로 합니다.

RaiDrive

FTP, GOOGLE DRIVE등을 탐색기를 이용해서 이용이 편리하도록 도와주는 프로그램입니다. WebDAV도 지원이 되네요.

https://www.raidrive.com/ko/ 로 들어가 RaiDrive를 다운로드 후 설치, 실행합니다.

추가 버튼을 누르고 WebDAV를 선택 / 위에서 설정한 값으로 세팅(http/https구분을 확실히 하고 포트는 기본 443으로 된것을 80으로 변경)합니다.

RaiDrive

정상적으로 세팅되면 네트워크 드라이브가 잡힙니다.

CarotDAV라는 프로그램도 있습니다. 포터블 버전도 지원되니 특별한 환경에서 사용이 가능할듯 합니다. (프로그램 설치를 맘대로 하지 못하는)

물론 TotalCommander와 같은 관리툴에서 이용하는것도 가능합니다.

Raid설정을 해서 안정성을 높이고 스케쥴을 이용해 2차, 3차 백업이 가능하도록 하면 작은 사무실등에서의 파일관리로는 꽤 괜찮을것 같습니다.