WD My Book Live Webdav 활성화 후 외부에서 네트워크 드라이브 등록하기
컨텐츠 정보
- 63,612 조회
- 44 댓글
- 0 추천
- 목록
본문
웬디 마이북 라이브의 활용도가 정말 무궁무진하군요 ㅎㅎ
오늘 드디어 웹데브 활성화에 성공했습니다.
관련링크에서 힌트를 얻었는데 아무리 하려고 해도 안되더군요 -_-;;;;
알고 보니 제가 엄청 삽질을 많이 했었습니다 ㅠㅠ
이 강좌를 보신 분은 단번에 하실 수 있으니 걱정하지 않으셔도 됩니다. ^^
웹데브는 간단하게 말해서 윈도우 상의 내컴퓨터에 외장하드를 추가하는 것입니다.
외장하드의 경우 일일이 들고 다녀야 하지만, 웹데브 활성화에 성공하면 앞으론 전세계 어디를 가든
인터넷만 된다면 마음대로 데이터 전송이 가능하다는거죠.
작업을 하기 전에 우선 SSH를 활성화 해야 합니다.
제 사용기(링크)의 마지막 부분에 활성화 하는 방법이 있으니 참고바랍니다.
그리고 마이북 라이브의 펌웨어를 최신버전으로 업데이트 해야합니다.
▲ 위 스샷처럼 펌웨어 버전을 확인하세요.
SSH 접속 후
/usr/local/sbin/addUser_apache.sh 1 admin 비밀번호
위와 같은 명령어를 붙여 넣고 실행하면 admin 계정으로 webdav에 접속이 가능해집니다.
다른 계정을 만들고 싶으면 admin 대신에 다른 이름을 넣어도 상관없습니다.
물론 비밀번호 부분은 본인이 원하는 비밀번호를 넣어야겠죠 ㅎㅎ
MyBookLive:~# /usr/local/sbin/addUser_apache.sh 1 아이디 비밀번호
- - appending to existing htpasswd file..
MyBookLive:~#
위와 같은 결과가 나오면 정상입니다. 이후 아이디 비번을 물어본다면 위에서 설정한 ID와 비번을 넣으면 됩니다.
혹시 비밀번호를 바꾸시려면 계정을 삭제하고 다시 생성하면 됩니다.
계정 삭제하는 방법은
/usr/local/sbin/deleteUser_apache.sh 'delete_dev_user' 아이디
위와 같이 넣으면 아이디가 삭제 됩니다.
그리고
/usr/local/sbin/addUser_apache.sh 1 아이디 비밀번호
이런 식으로 다시 생성하면 됩니다. 아이디는 admin도 되고 원하는대로 설정하면 됩니다.
이젠 모든 준비가 끝났습니다. (헉! 벌써?)
일단 내부에서 네트워크 드라이브를 붙여봅시다.
▲ 위 스샷처럼 내컴퓨터 상에서 우클릭 하면 네트워크 위치 추가 메뉴가 있습니다. 클릭
▲ 위 스샷처럼 \\내부IP주소\Public 을 넣고 다음
▲ 원하는 네트워크 드라이브 이름을 적어도 됩니다. 다음
▲ 성공!
▲ 잘 붙어있는 것을 볼 수 있습니다.
▲ 쓰기 속도는 35MB/s 전후로 나옵니다.
▲ 읽기 속도는 85MB/s 전후로 나옵니다.
FTP보다는 덜하지만, 편의성을 생각할땐 충분히 납득할만한 속도입니다.
그런데 내부에서는 어짜피 삼바라는 윈도우 최고의 파일 공유시스템이 있기 때문에
대부분의 유저들은 굳이 웹데브가 필요없을 가능성이 높습니다.
그럼 외부에서 접속 가능하게 해야겠죠.
그렇다면 DDNS와 포트포워딩을 반드시 해야합니다.
관련 개념을 잘 모르시면 제가 적은 강좌를 참고하세요. (링크)
▲ 위와 같이 적으면 됩니다. 내부포트는 무조건 80으로 해야합니다. 외부포트는 80으로 하면 적용하기 편합니다.
혹시 외부포르80을 쓰고 있다면 다른 포트로 해야하는데, 그럴 경우 네트워크 드라이브 추가할 때
\\DDNS:외부포트\Public 이런 식으로 넣으면 됩니다.
포트포워딩까지 마쳤다면, 외부에서 네트워크 드라이브 추가가 가능해집니다.
이제 집 밖으로 나왔다고 가정합니다.
▲ 위와 같이 다시 네트워크 위치 추가를 클릭
▲ \\본인의DDNS\Public
넣고 다음
▲ 이제 DDNS로 네트워크 드라이브가 추가되었습니다.
참 쉽죠? ^^
비단 윈도우 뿐만 아니라, 안드로이드나 아이폰의 어플에서도 WEBDAV 규격을 넣을 수 있다면 모두 가능합니다.
그리고 기본적으로 아파치 웹서버를 쓰고 있기 때문에 네트워크 드라이브를 추가하지 않아도
인터넷 브라우저 상에서도 파일 목록을 볼 수 있습니다.
SSH에 접속하여
a2enmod autoindex
위의 명령어를 복사 후 붙여넣어 실행합니다.
MyBookLive:~# a2enmod autoindex
Enabling module autoindex.
Run '/etc/init.d/apache2 restart' to activate new configuration!
MyBookLive:~#
/etc/init.d/apache2 restart
MyBookLive:~# /etc/init.d/apache2 restart
9625: old priority 0, new priority 0
Restarting web server: apache2 ... waiting .
MyBookLive:~#
위와 같이 나오면 성공
이제부터 중요한 소스를 넣는 부분입니다.
총 2가지 방법이 있는데, 초보분들에겐 1번 방법이 제일 쉽고 간단합니다.
다만 펌웨어 버전이 맞아야 하는데, 2013/11/17일 기준 최신버전인
MyBookLive 02.43.03-022 : Core F/W 이 버전만 사용가능합니다.
2번 방법은 1번 방법이 끝난 뒤에 적혀있습니다.
우선 소스를 넣기 전에 백업부터 합니다.
cp /etc/apache2/sites-available/wdnas /etc/apache2/sites-available/wdnas.org
위 명령어로 백업이 되었습니다.
혹시 복원을 하고 싶다면
cp /etc/apache2/sites-available/wdnas.org /etc/apache2/sites-available/wdnas
이제 복원이 되었습니다.
그후
nano /etc/apache2/sites-available/wdnas
소스가 보이는데,
[나눔붓]1. 펌웨어 버전이 위와 같다면,[/나눔]
컨트롤 + K 버튼을 누르고 있으면 모든 소스가 지워집니다.
그 후 밑의 소스를 붙여넣으면 됩니다.
소스를 붙여넣는 방법은, 소스 부분에 마우스를 갖다대면 오른쪽 윗부분에 네가지 아이콘이 뜹니다.
위 스샷에서 제일 왼쪽 view source를 눌러보면 팝업이 뜨는데 거기에 나오는 소스 내용을 다 긁어서 붙여넣으면 됩니다.
putty에서 붙여넣기는 마우스 우클릭한 후 컨트롤 + O, 엔터, 컨트롤 + X 누르면 됩니다.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<IfModule mod_rewrite.c>
RewriteLog /var/log/apache2/rewrite.log
RewriteLogLevel 0
RewriteEngine On
# address-only access redirected to User Interface
# RewriteRule ^/$ /UI/ [R]
# relocate UI
# relocate administrative REST
RewriteRule ^/api/1.0/rest/(.*) /Admin/webapp/htdocs/api/1.0/rest/index.php [L]
</IfModule>
<IfModule mod_rewrite.c>
# configure landing page for webdav applet
RewriteRule ^/LandingPage /Admin/webapp/htdocs/securityCheck.php [L,R]
</IfModule>
# additional environment variables to pass to CGI and SSI
# any way to use DocumentRoot/DOCUMENT_ROOT???
SetEnv __ADMIN_API_ROOT /var/www/Admin
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory /webdav>
Options FollowSymLinks
AllowOverride None
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
Alias /webdav /shares/Public
<Location /webdav/>
Dav On
Options Indexes
Order Deny,Allow
Deny from all
Allow from all
AuthName DeviceUser
AuthType Digest
AuthDigestDomain /webdav
AuthDigestProvider file
AuthUserFile /etc/nas/apache2/auth/htpasswd
AuthGroupFile /etc/nas/apache2/auth/htgroup
Require valid-user
</Location>
# block application folders from being served
<Directory /var/www/Admin/webapp/config/>
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/Admin/webapp/classes/>
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/Admin/webapp/includes/>
Order deny,allow
Deny from all
</Directory>
#block access protected files (php/ini files)
<Directory "/var/www/Admin/webapp/htdocs/protected">
AllowOverride None
deny from all
</Directory>
<Directory "/var/www/UI/app/webroot/">
RewriteEngine On
RewriteBase /UI/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</Directory>
# comment this line if remote WebUI access is needed (WAN access)
Include /tmp/allow.conf
<Directory "/var/www/UI">
RewriteEngine on
RewriteBase /UI/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^$ app/webroot/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) app/webroot/$1 [L]
php_value memory_limit 1G
</Directory>
### unused at this time
### ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
### <Directory "/usr/lib/cgi-bin">
### AllowOverride None
### Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
### Order allow,deny
### Allow from all
### </Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
###CustomLog /var/log/apache2/access.log combined
### not used at this time
### Alias /doc/ "/usr/share/doc/"
### <Directory "/usr/share/doc/">
### Options Indexes MultiViews FollowSymLinks
### AllowOverride None
### Order deny,allow
### Deny from all
### Allow from 127.0.0.0/255.0.0.0 ::1/128
### </Directory>
############################
# WebDav Extension
############################
<IfModule dav_module>
Include /etc/nas/apache2/auth/alias.inc
Include /etc/nas/apache2/auth/require.inc
</IfModule>
############################
</VirtualHost>
[나눔붓]2. 펌웨어 버전이 다를 경우[/나눔]
<Directory /var/www/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
위 코드 부분을 찾아서 바로 밑에 밑의 소스를 긁어서 붙여넣습니다.
<Directory /webdav>
Options FollowSymLinks
AllowOverride None
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
Alias /webdav /shares/Public
<Location /webdav/>
Dav On
Options Indexes
Order Deny,Allow
Deny from all
Allow from all
AuthName DeviceUser
AuthType Digest
AuthDigestDomain /webdav
AuthDigestProvider file
AuthUserFile /etc/nas/apache2/auth/htpasswd
AuthGroupFile /etc/nas/apache2/auth/htgroup
Require valid-user
</Location>
이제 소스 부분은 다 끝났습니다.
/etc/init.d/apache2 restart
위 명령을 내려 아파치를 재실행합니다.
MyBookLive:~# /etc/init.d/apache2 restart
10086: old priority 0, new priority 0
Restarting web server: apache2.
MyBookLive:~#
▲ 짠~~ 이제 웹브라우저만 있다면 내부에서도 쉽게 접근이 가능합니다.
mp4 파일의 경우 크롬에서는 바로 동영상이 재생됩니다. 물론 자막은 안나오죠 ^^;;
외부에서도 가능한지 봐야겠죠?
포트포워딩을 해놨기 때문에 DDNS/webdav를 넣으면 바로 뜹니다.
▲ 위와 같이 DDNS/webdav를 넣은 후 아이디 비밀번호를 넣으면!
▲ 짠! 이제 외부에서 웹브라우저만 된다면 바로 접근이 가능합니다 ^^
웹데브를 이용한 네트워크 드라이브 추가 및 브라우저에서 접근하는 방법
참 쉽죠? ^^
웬디 마이북 라이브 진짜 쓸만하네요 ㅎㅎ
레퍼런스는 관련링크에 있으니 참고하세요~
-
등록일 2016.01.23
-
등록일 2015.12.23WD My Cloud 시놀로지OS 사용기댓글 102
-
등록일 2014.10.07
-
등록일 2014.10.06
관련자료
-
서명우성짱의 NAS를 운영하고 있습니다.
저의 즐거움이 여러분의 즐거움이면 좋겠습니다.
-
링크