プラスα空間

ブログ in お市 のーと

LeopardをWebDAVサーバにする(Digest認証対応)[訂正あり]

暫定的なのですけれど、Mac OS X 10.5.8 LeopardをWebDAVサーバにする事ができました。暫定的と言う意味は、Windows系からアクセスした時の、ファイル名の文字化けに対応していないからです。Mac OS X同士なら大丈夫です。

設定が必要なのは、/etc/apache2/httpd.confと/etc/apache2/extra/httpd-dav.confです。この他に、パスワードファイルとロックファイルの準備が必要です。

/Users/Dav/usernameを、WebDAV経由でアクセス出来るようにします。また、Digest認証を使い、パスワードが平文で流れるのを防ぎます。なお、データは暗号化されません。

参考にしたのは、次のサイトです。ありがとうございます。

設定の方法は、次のステップです。

  1. 公開用ディレクトリ準備
  2. /etc/apache2/httpd.conf修正
  3. /etc/apache2/extra/httpd-dav.conf修正
  4. パスワードファイル作成
  5. Web共有再起動

(1)最初に、公開用ディレクトリを準備します。

$ cd /Users
$ sudo mkdir Dav
$ cd Dav
$ sudo mkdir username
$ cd /Users
$ sudo chown -R www:www Dav

ロックファイルが、/Users/Davの下に作られるので、/Users/Davがユーザ”www”でRead/Writeアクセス出来るようになっている事が重要です。

(2)/etc/apache2/httpd.confを修正します。

$ cd /etc/apache2
$ sudo cp -p httpd.conf httpd.conf.orig
$ sudo vi httpd.conf

バックアップを作ってから、修正するようにします。修正するのは、2行です。

ServerNameの設定をします。IPアドレスは、お使いの環境に合わせて変更して下さい。

#ServerName www.example.com:80

ServerName 192.168.0.1

httpd-dav.confを読み込むように、”#”を削除します。

#Include /private/etc/apache2/extra/httpd-dav.conf

Include /private/etc/apache2/extra/httpd-dav.conf

(3)/etc/apache2/extra/httpd-dav.confの修正です。

$ cd /etc/apache2/extra
$ sudo cp -p httpd-dav.conf httpd-dav.conf.orig
$ sudo vi httpd-dav.conf

バックアップをとってから作業します。基本部分をそっくり入れ替えます。他の部分は、そのままにします。

DAVLockDB /Users/Dav/DavLock
DAVMinTimeout 600
<IfModule alias_module>
    Alias /dav/username "/Users/Dav/username"
</IfModule>
<Directory "/Users/Dav/username">
    Dav On
    AllowOverride None
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1 192.168.0.
    Options Indexes FollowSymLinks MultiViews
    AuthType Digest
    AuthName WebDAV
    AuthDigestFile /Users/Dav/dav_digest
    <LimitExcept GET HEAD OPTIONS>
        require valid-user
    </LimitExcept>
</Directory>

DAVLockDBの指定位置が重要です。/Users/DavがApache(www)で書き込み出来るディレクトリになっている必要があります。 実際に作られるのは、/Users/Dav/DavLock.dirと/Users/Dav/DavLock.pagと言うファイルです。/Users/Dav/DavLockがディレクトリの意味だと思っていて、最初につまずきました。

OptionsでIndexesを指定しないと、Webブラウザでアクセスすると403 Forbiddenになると思います。これにもはまりました。

(4)次に、パスワードファイルを作成します。

$ cd /Users/Dav
$ htdigest -c dav_digest WebDAV username

これは、新規にパスワードファイルを作る時の方法です。ユーザを追加する時は、”-c”オプションは付けないで下さい。”WebDAV”は、httpd-dav.confのAuthNameで指定したものと同じにします。AuthNameにスペースが入る場合は、クォーテーションで囲みます。

(5)Web共有を再起動します。システム環境設定→共有で、Web共有のチェックを一度外して、再びチェックします。

以上で、WebDAVの設定は終了です。Finderの、移動→サーバへ接続…で、サーバアドレスに、http://192.168.0.1/dav/username/を指定します。設定したユーザ名とパスワードを入力すると、マウント出来るはずです。

(訂正 2011-02-13)

パスワードファイルの設定方法を間違えていました。以前の方法で、接続できていたのが、謎です…。

【関連記事】

コメントを残す