【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認証でやってみたいところ。
Yamahaルータのちょこちょこスクリプト IPv6IPoEをOG配下で使う