通常、HTTPプロトコルはホームページなどを表示させる時に使用しページの閲覧やファイルのダウンロードなど、サーバからクライアントへのデータ送信が主流です。
しかし、WebDAV(Web-base Distributed Authoring and Versioning)を導入する事によりHTTPプロトコルを使用して内部または外部よりサーバのパス(フォルダ)を共有しデータ(ファイル)のダウンロード(読込)とアップロード(書込み)を可能にすることができます。
念のため、本当に組み込まれているか確認してみましょう!
WebDAVモジュールの組込み確認 # vi /etc/httpd/conf/httpd.conf # # Dynamic Shared Object (DSO) Support # # To be able to use the functionality of a module which was built as a DSO you # have to place corresponding `LoadModule' lines at this location so the # directives contained in it are actually available _before_ they are used. # Statically compiled modules (those listed by `httpd -l') do not need # to be loaded here. # # Example: # LoadModule foo_module modules/mod_foo.so # LoadModule access_module modules/mod_access.so LoadModule auth_module modules/mod_auth.so LoadModule auth_anon_module modules/mod_auth_anon.so LoadModule auth_dbm_module modules/mod_auth_dbm.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule ldap_module modules/mod_ldap.so LoadModule auth_ldap_module modules/mod_auth_ldap.so LoadModule include_module modules/mod_include.so LoadModule log_config_module modules/mod_log_config.so LoadModule env_module modules/mod_env.so LoadModule mime_magic_module modules/mod_mime_magic.so LoadModule cern_meta_module modules/mod_cern_meta.so LoadModule expires_module modules/mod_expires.so LoadModule deflate_module modules/mod_deflate.so LoadModule headers_module modules/mod_headers.so LoadModule usertrack_module modules/mod_usertrack.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule mime_module modules/mod_mime.so LoadModule dav_module modules/mod_dav.so LoadModule status_module modules/mod_status.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule asis_module modules/mod_asis.so LoadModule info_module modules/mod_info.so LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule dir_module modules/mod_dir.so LoadModule imap_module modules/mod_imap.so LoadModule actions_module modules/mod_actions.so LoadModule speling_module modules/mod_speling.so LoadModule userdir_module modules/mod_userdir.so LoadModule alias_module modules/mod_alias.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule cache_module modules/mod_cache.so LoadModule suexec_module modules/mod_suexec.so LoadModule disk_cache_module modules/mod_disk_cache.so LoadModule file_cache_module modules/mod_file_cache.so LoadModule mem_cache_module modules/mod_mem_cache.so LoadModule cgi_module modules/mod_cgi.so この「mod_dav*.so」がWebDAVモジュールとなります。 各モジュールは「/usr/lib/httpd/modules/」パスに存在しています。 |
共有フォルダの作成 # mkdir /var/www/html/webdav 所有者・所有グループを「apache」にする # chown apache:apache /var/www/html/webdav |
設定ファイルの作成 # vi /etc/httpd/conf.d/webdav.conf 以下を作成する # # This is to permit URL access to WebDav. # Alias /webdav/ "/var/www/html/webdav/" <IfModule mod_dav.c> DAVMinTimeout 600 <Location /webdav> DAV On Order deny,allow Deny from all Allow from all </Location> </IfModule> 設定を有効にする為、apacheの再起動 【FC1 から Fedora15 / CentOS4 / CentOS5 / CentOS6 】 # /etc/rc.d/init.d/httpd restart 【Fedora16以降 の場合】 # systemctl restart httpd.service |
完璧ではありませんが以下の設定を行う事により、網羅できると思います。
Webページアクセス制限 以下はWebページアクセス制限(.htpasswd & .htaccess)参照 Webページアクセス制限で作成したパスの配下に「webdav」のパスを新たに作成 (WebDAVアクセス用パスワード) # mkdir /var/www/secure/webdav/ パスワードファイルを作成し、ユーザ「linux」のパスワードを設定 # htpasswd -c /var/www/secure/webdav/.htpasswd linux アクセス可能なユーザ名"linux"のパスワードを入力する New password: 確認の為、上記と同じパスワードを入力する Re-type new password: Adding password for user linux 設定ファイルの編集 # vi /etc/httpd/conf.d/webdav.conf # # This is to permit URL access to WebDav. # Alias /webdav/ "/var/www/html/webdav/" <IfModule mod_dav.c> DAVMinTimeout 600 <Location /webdav> DAV On 以下を追加する SSLRequireSSL AuthType Basic AuthName "Login WebDAV" AuthUserFile "/var/www/secure/webdav/.htpasswd" Require valid-user Order deny,allow Deny from all Allow from all </Location> </IfModule> 最終行に以下を追加する ポート80できたアクセスをポート443(https)に流す <VirtualHost *:80> Redirect /webdav https://kajuhome.com/webdav </VirtualHost> 設定を有効にする為、apacheの再起動 【FC1 から Fedora15 / CentOS4 / CentOS5 / CentOS6 】 # /etc/rc.d/init.d/httpd restart 【Fedora16以降 の場合】 # systemctl restart httpd.service |
「インターネットまたはネットワークのアドレス(A)」の入力欄を「https://・・・・」に変更して「次へ(N)」をクリックすると以下の画面が表示されます。
後は同様の手順でネットワークプレースを作成します。(ネットワークプレースが作成されると以下の様になります。)
ネットワークプレースに追加された「https://・・・・」をダブルクリックすると、認証ウィンドウが表示されるので、WebDAVアクセス用ユーザとパスワードを入力し「OK」ボタンをクリックします。
認証が確立すると、セキュアなWebフォルダにアクセスできます。