[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[webdav-jp:0329] ユーザ毎の認証と SetUID



睦好と申します。

 Segmentation Fault の件では、皆様に大変お世話になりました。mod_dav
自体は快調に動いております。

 いろいろ設定を試みて気がついたのですが、mod_dav って、apache の実行
権限でファイルアクセスするのですね。マルチユーザーで使うフォルダーと
して、使うことを考えていたので、使えないやぁ〜と一瞬匙を投げかけまし
た。しかし、気を取り直して考えました。

 apache を root 権限で動かせば、SetUIDをすることは可能なようですが、
今使っている apacheに適用するのはセキュリティ的にまずい。

 さてどうしよう?と工夫した結果、以下のように別の領域に、apache を
設定し、動作させることができました。

  ユーザー数は、httpd.conf に記述できる範囲なら大丈夫そうです。

1-a CFLAGS に -DBIG_SECURITY_HOLE をつける形で再コンパイルし、現在
    運用中のapacheとは独立したディレクトリにインストールする。
 -b この apache は、User root で動かす。
 -d 80ポート以外をListenする。
 -e ユーザー毎に VirtualHOST を設定し、mod_auth_shadow による認証と
    mod_become で、setuid する。
 -e 念のため、下の項で設定する現在運用中の Apache の Proxy 以外のリク
    エストは応えないようにする。

2-a 現在使用している apache は、mod_proxy を有効にし、DAVを動かすURL
    にリクエストがあった場合は、上記の<VirtualHost>にリダイレクト
    する。

 要するに、WebDAV に認証をかけて、ユーザー毎のホームディレクトリ
のように設定したいのです。
 他にもっと良い方法があるよ〜とか、このやり方では、セキュリティ的に
マズイとか、お知恵をいただければ幸いです。

---
睦好正治
masaharu@xxxxxxxxxxxxxx