webdavの設定でつまずく

Date 2016-3-17 11:08:31 | Topic: Linux (CentOS)運用時のメモ

ネットワーク内はsamba4を動かし、ファイルサーバーを立てているが、外からに対しファイルサーバーを作る。
これには webdav を動かす。CentOSでインストールされるapache は2.0なのでwebdavは設定だけで出来る。
# gedit /etc/httpd/conf.d/webdav.conf
# This is to permit URL access to WebDav.
#
Alias /webdav "/webdata/webdav"
<IfModule mod_dav.c>
    DAVMinTimeout 600
    <Location /webdav>
        DAV on
        SSLRequireSSL
        AuthType        Basic
        AuthName        "Login WebDAV"
        AuthUserFile    "/webdata/HtPasswd/.htpasswd"
        Require valid-user
        Order deny,allow
        Deny from all
        Allow from all
    </Location>
</IfModule>


この設定はアクセスできるユーザーが決められていて、必ずSSLを使う設定なので、
この前にSSLの設定が終わっている事(もちろんapacheの設定も)。
参照:https://www.kinryokai.net/modules/news/article.php?storyid=146
次にアクセスできるユーザーに制限をかけたので、そのユーザーを作る。
# htpasswd /webdata/HtPasswd/.htpasswd ユーザー名
私は以前に同じ事をし、ユーザーを作っていたのでこれでいいが、最初にユーザーを作るときは htpasswdの後に -c オプションを付けること。
但し、もし以前に設定があったら全部消えるのでご注意を。
パスワードを2回聞かれるので設定する。
ちなみにこのユーザーはあくまでwebdavのみのユーザーなので、もちろんローカルのユーザーは作らなくてよい。
でもって、コンテンツにapacheサーバーがアクセスする為に所有者をapache(CentOSの場合)にする
# chown -R apache:apache /webdata/webdav
今度はクライアントであるwindows7に設定をするが、色々調べるとwindowsのwebdavの造り込みの評判がよくない。
なので、クライアントプログラムをインストールすることにしたが、前の会社で使っていたteamfileと言うのを使う。
まずはダウンロード http://www.teamfile.com/modules/d3downloads/ にアクセスし、TeamFile WebDAVクライアント(フリーウェア)をクリックしダウンロードする。
TeamFileFileSetup-2.1.146.1709.exe(2016年3月現在)があるのでそれをダブルクリックしインストールする。
エクスプローラー(インターネット・エクスプローラーでは無いよ)を開き左ペインのコンピューターをクリックすると、右ペインのその他下に TeamFile が出来ている。
これを右クリックし、サーバーの追加を をクリック。

名前は適当に入力、URLは正確に、特に私はSSLのみを許可しているので https:// の Sは大事、最後に / を忘れずに。
ユーザーIDとパスワードは設定した者。
その後、接続テストタブをクリックし、テストモードにする。
この画面は”テスト”をクリックした後の画面。
青のアンダーラインの様に接続成功となっているばOK。
ここでTeamFileの下に出来たWEBDAV(これは自分で設定した名前)をクリックするが、
サーバーエラーになってしまう。
コンテンツがWEBサーバーの実行ユーザーであるapacheになっていないような感じだが、いくら見直しても問題ない。
/etc/httpd/conf.d/webdav.conf も問題ない。どつぼにハマる。
色々探ったが結局問題は httpd.conf だった。
原因は以前にwebdavはwebdav.confでしようとhttpd.conf の下記の部分をコメントアウトしていたせい。
#
# WebDAV module configuration section.
#
<IfModule mod_dav_fs.c>
    # Location of the WebDAV lock database.
    #DAVLockDB /var/lib/dav/lockdb
</IfModule>
つまりwebdavのロックファイルの指定が無かった。と言う情けない状態だった。

このコメントアウトを取り、apacheを再起動するとファイルが表示された。

















This article comes from 錦稜会 KINRYOKAI
https://www.kinryokai.net

The URL for this story is:
https://www.kinryokai.net/article.php?storyid=281