OrangeGardenRoom

技術系のメモ

【Apache2.4/Ubuntu14.04】WebDAVサーバの設定

なんか変なことで色々はまったのでメモ。

OS:Ubuntu 14.04 Server 64bit

HTTP:Apache 2.4.7

 

必要なインストールとモジュール有効化

# apt-get install apache2-utils

# a2enmod ssl

# a2enmod digest

# a2enmod dav

# a2enmod dav_fs

# a2enmod dav_lock

# a2ensite default-ssl

 

 

 

WIndows7以降のWebDAVはHTTPS化が必須のため、SSL証明書を準備する。

公式な証明書ないなら適当事故証明書(オレオレ証明書)を作る。(いちいち更新するならLet’s Encryptでも)

 

# openssl genrsa 2048 > server-private-key.key
# openssl req -new -key server-private-key.key > server.csr
# openssl x509 -days 3650 -req -signkey server-private-key.key < server.csr > server-public-key.crt

 

サーバのIPが192.168.1.200とかなら、2行目の色々いれるところの

Common Name (e.g. server FQDN or YOUR name) []:

のあとに、192.168.1.200っていれておく

 

※外部からアクセスするなら、そのアクセスするアドレスを入れること

例えば、yourdomain.aa0.netvolante.jpとか

 

 

 

 

ぺぺぺっとsslとかフォルダ作っていれて適用。

# vi /etc/apache2/sites-available/default-ssl.conf

SSLCertificateFile      /etc/apache2/ssl/server-public-key.crt
SSLCertificateKeyFile /etc/apache2/ssl/server-private-key.key

 

 

 

webdavの設定ファイルをsites-availableの中に突っ込んで適当に

# mkdir /home/webdav
# chown www-data:www-data /home/webdav
# chmod 777 /home/webdav

# touch /etc/apache2/DavLock
# chmod 777 /etc/apache2/DavLock

# mkdir /etc/apache2/.secure
# chown www-data:www-data /etc/apache2/.secure
# htpasswc -c /etc/apache2/.secure/.user.pw user
(このあとパスワード2回入れる)

# vi /etc/apache2/sites-available/webdav.conf

DavLockDB /etc/apache2/DavLock
Alias /webdav /home/webdav

<Directory /home/webdav>
   Dav On
   SSLRequireSSL
   Options -Indexes

   AuthType Basic
   AuthName "WebDavLogin"
   AuthUserFile "/etc/apache2/.secure/.user.pw"
   Require valid-user

</Directory>

※上の設定は、ユーザ名はuser。 パスワードは見えないけど2回入れる。

 

 

有効化したあと再起動、証明書にパスワード入れてる場合は求められるので入れます。

 

# a2ensite webdav

# apachectl stop

# apachectl start

 

 

 

Windows10側の設定

レジストリとかは不要

 

 

○証明書のインストール

サーバにおいた、server-public-key.crtをコピーしてPC側でダブルクリックするか、

下記IEの作業。(コピーしてきた場合は、※までとばす)

 

 

IEを開いて、https://192.168.1.200/webdav を開く。

エラーがでるので、そのまま進んで、ユーザ認証までする。

歯車マーク→インターネットオプション→セキュリティ→信頼済みサイト

→サイト

多分「https://192.168.1.200」が表示されてるので追加、閉じる、OK。

 

一度IE閉じてから、https://192.168.1.200/webdav を再度開く。

またエラーがでて、ユーザ認証をする。

アドレスバーの右側に南京錠マークが出るので、クリック→証明書を表示。

 

 

 

※server-public-key.crt持ってきた人はここから

「証明書のインストール」(IE経由の場合、これが押せない場合は、信頼済みサイトに登録できてないとき)

ローカルコンピュータ→証明書を全て次のストアに表示する→参照

→信頼されたルート証明機関→次へ→完了

 

 

またブラウザ閉じて、再度 https://192.168.1.200/webdav へアクセスして、

証明書のエラーが出てなければ成功。

 

 

 

 

○フォルダで開く設定

エクスプローラ出して、PCを出して上のところの「ネットワークの場所の追加」

https://192.168.1.200/webdav を入力して、ユーザパスワードをいれてエラー出ずにいけばOK!

 

 

あとはファイル設置してみたり、編集してみてエラーが出なければ完了。

 

 

 

【ハマったとこ】

index.html置くと、ブラウザからはいけるけど、ネットワークの場所の追加でエラーが出るぞ!

ファイルに許可権か、www-dataを所有者にしないと編集ができなくなるぞ!(当たり前。

AuthUserNameのファイル名指定、ちダブルクォーテーションで始めたなら、ちゃんと最後にも書くんだよ!!

ReuireAnyで、Reqire methodとReqir valid-user並べてるやつあったけどあれなんなのまじ!!

 

 

次Digest認証でやってみたいところ。

 

 

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です