Twitterに投稿 はてなブックマークに追加 Google Bookmarksに追加

目次 >> Apache >> WebDAV

Webサーバの設定 - Apache - WebDAVの設定

ここでは、ApacheのWebDAVを使ってファイルを共有することを考える。

Apache2系であれば、WebDAVを機能させるのはそれほど難しいことではない。しかしながら、WindowsのエクスプローラからapacheのWebDAVにアクセスすると、大きなファイルの転送時に、システムが固まったようになり、使い勝手それほど良いわけでない。LAN内で使うのであればSambaを、外から、あるいはより安全なファイル転送を求めるならsftpをお薦めする。

まず、FC4の場合、mod_davとmod_dav_fsが組み込まれているかを確認する。具体的には下記の行があるかどうかを確認する

LoadModule dav_module                      modules/mod_dav.so
LoadModule dav_fs_module                   modules/mod_dav_fs.so

openSUSE 10.0の場合は/etc/apache2/sysconfig.d/loadmodule.confというファイルに書かれているが、これを直接書き換えても、システムが上書きしてしまいうまくいかない。yastを立ち上げ、system、/etc/sysconfig editorを開き、Network、WWW、APACHE_MODULESとすすみ、そこへ最後のところに、dav dav_fsとスペースで区切って追加する。

そして下記の行でWebDAV機能を有効にする。DAVLockDBは必ずすべての外側に書いてください。また、/var/lib/dav/ディレクトリのアクセス権を755にしておく。

DAVLockDB /var/lib/dav/lockdb
<Location /testdir/>
#WebDAV機能を有効にする
    DAV On
</Location>

これで、\\example.com\testdirでアクセスできるようになります。ただし、

Basic認証

AuthTypeでBasicを指定すると、基本認証が可能になります。

AuthType Basic
AuthName "Example"
AuthUserFile "/etc/apache2/.davpasswd"
Require valid-user

パスワードファイルは、htpasswdもしくはhtpasswd2を使って生成します。

openSUSE 10.0の場合は、htpasswd2を使います。

/etc/apache2ディレクトリへ行き、

# htpasswd2 -c ./.davpasswd hoge
New password: Re-type new password: Adding password for user hoge

Digest認証

Digest認証を使うには、mod_auth_digestが必要です。

Digest認証を行うディレクトリが記述されたセクションで、そして下記のように設定します。

AuthType Digest
AuthName "Restricted Zone"
AuthDigestDomain /foo/
AuthDigestFile /usr/local/apache/passwd/htdigest
Require user hoge

AuthTypeでは、Digest認証を使うという指示を与えます。
AuthNameはユーザーがパスワードを入力する際に、表示されます。
AuthDigestDomainでは、どの領域で有効かを設定します。最低限自分のディレクトリは含めること。
AuthDigestFileでは、パスワードファイルを指定します。パスワードファイルは、必ずウェブからアクセスできない場所に作成します。
Requireでは、ここでは。hogeというユーザー名が必要であることを示しています。

パスワードファイルは、

# htdigest [-c] パスワードファイル レルム ユーザー名

の様な構文になります。-cは初めて作成するときのみ指定してください。具体的には、

# htdigest -c /usr/local/apache/passwd/htdigest 'Restricted Zone' hoge

の様に打ちます。

LDAPを利用する

(作成中)

最終更新日


本文中のFC4はFedora ProjectのFedora Core 4を、FC5はFedora Core 5を、FC6はFedora Core 6をopenSUSEはNovellのSUSE Linux OSSを表します。Fedora7以降は、単にFedora7、Fedora8、Fedora9、Fedora10、Fedora11、Fedora12、Fedora13、Fedora14、Fedora15と表示しています。Ubuntuは、必要に応じて20.04、21.04のようにバージョン番号をつけて区別しています。

ここに登場するドメイン名やIPアドレスなどはフィクションです。実在の人物・団体等とは一切関係がありません。
実際に使用する際は、各自の環境に合わせて書き換えてください。
もし何か間違いなどありましたらこちらからご連絡ください
リンクに許可は不要です。
Copyright (C) 2021 Chikuma Engineering Co., Ltd. All Rights Reserved.