Apache2 및 필요한 모듈 설치

sudo apt update
sudo apt install apache2 apache2-utils

 

WebDAV 모듈 활성화

sudo a2enmod dav_fs dav

 

Apache 사이트 설정 파일 생성

sudo nano /etc/apache2/sites-available/webdav.conf

아래 내용을 복사한 후 마우스 우클릭

Alias /webdav /var/www/webdav

<Directory /var/www/webdav>
  DAV On
  
  AuthType Basic
  AuthName "webdav"
  AuthUserFile /etc/apache2/.htpasswd

  <LimitExcept GET OPTIONS>
      Require valid-user
  </LimitExcept>
</Directory>

Ctrl+X를 눌러 종료하면, 저장할 것인지 물어보므로 Y를 입력 후 엔터, 다시 저장경로를 물어보면 그대로 엔터를 하면 된다.

 

Apache에 사용자 추가('username'은 본인이 원하는 사용자 이름으로)

sudo htpasswd -c /etc/apache2/.htpasswd username 

새로운 사용자의 password 설정과 재확인 요구하면, 본인에 맞게 설정.

 

새로운 사이트 설정 활성

sudo a2ensite webdav.conf 

 

Apache 서비스 재시작

sudo systemctl restart apache2.service 

 

브라우저에서 http://localhost/webdav로 접속하여 확인

위와 같이 나왔다면 성공!

 

 

실사용을 위한 설정 변경

테스트를 위해 <LimitExcept> 태그로 GET 요청에 대해 인증예외를 두었다.

즉, 로그인 없이 파일을 다운로드할 수 있게 해둔 것이다.

실제 사용을 위해서는 자료 유출을 막기 위해 GET에 대해서도 인증을 요청하도록 수정해야 한다.

/etc/apache2/sites-available/webdav.conf 파일을 다음과 같이 수정한다.

Alias /webdav /var/www/webdav

<Directory /var/www/webdav>
  DAV On
  
  AuthType Basic
  AuthName "webdav"
  AuthUserFile /etc/apache2/.htpasswd

  Require valid-user
</Directory>

 

원격지에서 사용하고 싶다면 공유기에 DDNS 설정을 해주고, 우분투가 설치된 IP의 80 포트를 자신이 외부에서 접속하고 싶은 포트번호로 포트포워딩하고 접속하면 된다.

+ Recent posts