WebDAV+SSLで手軽にクラウドNASにしてしまおう

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

こんにちは。ばっしーです。

いきなり行きます。

懐かしいWebDAV

WebDAVというと一昔前にファイル共有する際に使ったことがある方もいるかもしれません。

使い勝手の面では非常に良くて、WindowsやMachintoshでもドラッグアンドドロップが使えたり、開いたフォルダの中でダブルクリックでファイルを開いたまま編集出来たりします。(編集してしまうのは何となく危険な気がするのでお勧めはできませんが)

さて、そんなWebDAVですが、さすがにBASIC認証だけではセキュリティ面が怪しかったり、そもそも通信が暗号化されていなかったりであまり普及しているとは言えない状態のまま、最近ではめっきり聞かなくなってしまいました。

しかし、最近は常時SSL化の波が来ていることもあるので、WebDAVもSSL化してしまえ!と乱暴なことを考えてしまいました。そしたら大きいデータの受け渡しにも苦労しないでしょ?まるでクラウド対応NASの様な使い勝手?!にもなってしまう優れもの・・・かもしれません。

CentOS6+Apache2+OpenSSL+WebDAV

先日のエントリー「無料SSLサーバー証明書「Let’s Encrypt」 を使ってみた」で構築したサーバーを利用してWebDAVを設定してみたいと思います。

まずはファイル共有するプロトコルであるSAMBAをインストールします。

yum -y install samba
/etc/rc.d/init.d/smb start
chkconfig smb on
/etc/rc.d/init.d/nmb start
chkconfig nmb on

次に、共有フォルダを作成し所有者・所有グループを「apache」にします

mkdir /var/www/html/webdav
chown apache:apache /var/www/html/webdav

ディレクトリへapacheグループ権限で参照・更新・実行を許可、新規作成するファイルへapacheグループ権限で参照・更新・実行を許可

setfacl -m g:apache:rwx,g:apache:rwx /var/www/html/webdav
setfacl -m d:g:apache:rwx,g:apache:rwx /var/www/html/webdav

設定ファイルを作成します

vi /etc/httpd/conf.d/webdav.conf
<Directory "/var/www/html/webdav">
Dav On
AuthType Basic
AuthName WebDAV
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
Order allow,deny
Allow from all
</Directory>

BASIC認証用ユーザ登録

htpasswd -c /etc/httpd/conf/.htpasswd user01 ← 初めて.htpasswd作成する場合
htpasswd /etc/httpd/conf/.htpasswd user01 ← BASIC認証用ユーザ追加登録
(パスワード応答&パスワード応答(確認))

設定を有効にする為、apacheの再起動

/etc/rc.d/init.d/httpd restart

これで完成です。

Wndows7でのマウント手順

「マイコンピューター」を右クリックし、「ネットワークコンピューターを割り当て」をクリック。

WebDAV00

ドライブ文字は任意、フォルダーに「https://www.hogehoge.com/webdav」と入力し、完了を押します。

WebDAV01

すると、ユーザー名とパスワードが聞かれますので上記で設定したものを入力するとマウントが完了します。

WebDAV02

マウント完了です。

WebDAV03

 

「入力したフォルダーは有効ではないようです」エラーの謎

「ネットワークの場所を追加する」を利用すると「入力したフォルダーは有効ではないようです」と表示され、エラーになっていましたが、しばらくしたら直りました。。。なんなんだ。。。(謎)

ちなみに、この方法はKAGOYA様のページに詳細の方法が記載されています。

 

応用方法

ちなみに、今回はAWS、いわゆるクラウド上に構築してみましたが、こういった用途に使えるサービスは他にたくさん用意されていると思います。なのでクラウド上に作るメリットはあまりないと思います。

それよりも、自宅のRaspberry Piなどの小型LinuxやWindows機に大容量HDDをぶら下げて、8TBの超大容量クラウドストレージを友人と共有してしまうとか、そういった使い方がおススメできますね。

 

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

コメントを残す