株式会社ラクス  ITエンジニア総合支援サイト スタックアスタリスク フルマネージド専用サーバー エクスユニット
ITエンジニアとして 知る 学ぶ
 
Java
.NET
PHP
プログラミング一般
DataBase
システム/サーバ構築
システム/サーバ運用
技術系一般知識
 
 
>IT技術情報>システム/サーバ構築>0からのApache第11回:Apache拡張設定(WebDAV編 その2)
【連載 】0からのApache

第11回:Apache拡張設定(WebDAV編 その2)

 
前回はWebDAVの機能を使用して、WWWサーバに対してファイルサーバの機能を持たせました。
実はこのままでは、Web上で公開するには問題があります。その問題というのはWWWサーバに対してのアクセスに関する事と日本語のファイルが使えない事です。適切なセキュリティを実装していないと、悪意を持ったユーザに荒されてしまう事になってしまいます。今回はそのWebDAVで公開されているディレクトリに対してのセキュリティの実装と、日本語環境でも使えるようにするための設定について述べていきます。

水本 敦士
株式会社アイティーブースト
2004/6/14
 

【 目次 】
1.はじめに
2.サーバに対するアクセス制限
2_1.ホストベースセキュリティ
2_2.ユーザベースセキュリティ
3.転送中のデータ保護
3_1.SSL通信の開始
3_2.クライアント(Windows)の設定
4.日本語環境への移行
4_1.mod_encodingのダウンロード
4_2.mod_encodingのインストール
4_3.mod_encodingを有効にする

【実行環境】
RedHatLinux9.0
httpd-2.0.49
openssl-0.9.7d
WindowsXP

1.はじめに

 前回までで、WWWサーバにWebDAVの機能を追加して、ファイルを格納する所まで行いました。しかし、このWebDAV機能付加WWWサーバはまだWeb上に公開して運用できるようなものではありません。なぜなら、このWWWサーバはアクセス制限を行なっておらず、また文字コードの問題があるのです。
 そのアクセス制限には以下の2点があります。
  •  現状誰でも、このサーバにアクセスする事ができてしまう。
  •  転送中のデータが平文で、悪意をもったWeb上のユーザに見られてしまう。
 また文字コードの問題というのは、現状では日本語表記のファイルが使用できないと言う事があります。
  今回は、上記で上げたアクセス制限を行い、日本語環境で使用できるようにして、Web上で公開するためにはどうすれば良いかを説明していきます。


▼Java や Linux を体系的に学びましょう!▼
Stack*のラクスが、
新学習方式のカリキュラムを開発しました!
14700円から(*1)、Java や Linux を体系的に学べます!!
(*1 テキスト代のみの税込料金です)



2.サーバに対するアクセス制限

 まず、サーバに対するアクセスに関して、適切なセキュリティを実装して行きます。サーバに対するアクセス制限のかけかたとしては、以下の二通りの方法があります。(詳しくは「第4回:Apache基本設定パート2」を参照してください。)
(1) WWWサーバにアクセスしてくるホストを制限する。
これはApacheのホストベースセキュリティの機能を使用します。Apacheのホストベースセキュリティは、ディレクトリやファイル単位で行なうことができます。そのため、今回はWebDAVで公開されているディレクトリに対してアクセスを許可したIPアドレスからしかアクセスできないように、設定を行なっていきます。
(2) WWWサーバにアクセスしてくるユーザを制限する。
これはApacheのユーザ認証の機能を使用します。このユーザベースセキュリティもディレクトリやファイル単位でセキュリティをかける事ができます。今回はWebDAVで公開しているディレクトリに対するユーザの認証を行なっていくようにします。

2_1.ホストベースセキュリティ

 ここでは、WebDAVで公開されているディレクトリに対してセキュリティをかけることにします。ここでの例では、アクセスを許可するクライアントは192.168.0.0/255.255.255.0のネットワークに所属するクライアントのみとし、その他のクライアントはアクセスできないようにします。
  設定する箇所は前回、httpd.confでWebDAVの設定を行なったディレクィブに追加していきます。

<httpd.conf>
    DavLockDB /var/lock/dav/DavLock
    <Location /davdav>
         Allow from 192.168.0.0/255.255.255.0 ・・・(1)
         Deny from ALL ・・・(2)
         Order Deny,Allow ・・・(3)
         Dav on
  </Location>

(1) 許可するホスト(ネットワークアドレス)を指定します。
(2) 全てのホストを拒否します。
(3) 評価順番を指定します。

 以上のように設定する事により、192.168.0.0/24のネットワークに所属するマシンのみがアクセスを許可されるようになります。

2_2.ユーザベースセキュリティ

 上記の設定で、アクセスしてくるマシンを決めましたが、これだけでは未だ安全とはいえません。アクセスを許可しているマシンを常に同じユーザが使用し、他のユーザはまったく使えないのであれば良いのですが、実際はそのような事はありません。そのため、次はWebDAVにアクセスしてくるユーザに対しての制限をかける必要があります。
 今回はApacheの機能を使用して、アクセスしてくるユーザの制限をかける事にします。使用する認証としては色々なブラウザで使用する事ができるBasic認証を使用します。Basic認証についてはユーザ名とパスワードを平文でサーバに送信するため、セキュリティ上良くないように思えますが、後述するSSL通信を行えるApacheの環境であれば、全て通信は暗号化されるため、特に問題はありません。
 以下のようにhttpd.conf内のWebDAVの記述にBasic認証の内容を追加していきます。

<httpd.conf>
DavLockDB /var/lock/dav/DavLock
<Location /davdav>
   Allow from 192.168.0.0/255.255.255.0
   Deny from ALL
   Order Deny,Allow
   AuthType Basic ・・・(1)
   AuthName "The directory exhibited by WebDAV" ・・・(2)
   AuthUserFile "/usr/local/apache2/conf/.davpasswd" ・・・(3)
   Require valid-user ・・・(4)
   Dav on
</Location>

(1) ユーザ認証のタイプを指定します。今回はBasicと指定します。
(2) ユーザ名とパスワードを入力するダイアログに表示される題名を指定します。
(3) ユーザ認証で使用するユーザ名とパスワードの入ったファイルの場所を絶対パスで指定します。
今回はApacheの設定ディレクトリの中にファイルを作成します。ファイル名は任意ですが、ファイルのセキュリティを確保するために、ファイル名の先頭に"."をつけて隠しファイルにします。
(4) このディレクトリにアクセスできるユーザを指定します。今回は、/usr/local/apache2/conf/.davpasswdに登録されている全てのユーザが使用できるように、"valid-user"にします。

 次にWebDAVで公開されたディレクトリに対しての、アクセスを許可するユーザを登録します。ユーザ登録にはApacheが提供しているツール、htpasswdを使用します。
 例えば、WebDAVで公開されたディレクトリにアクセスできるユーザを"davuser"とした場合は以下のようなコマンドになります。また、現在、ユーザ名とパスワードの入ったファイルは作成されていないので、新規に作成する必要があります。そのため、コマンドオプションの"-c"を付加して実行します。

 # /usr/local/apache2/bin/htpasswd -c /usr/local/apache2/conf/.devpasswd davuser
New password:  ← ユーザのパスワードを入力します。表示はされません。
Re-type new password: ← 上と同じパスワードを入力します。表示はされません。
Adding password for user davuser


>>次のページへ

【 ページ 】 | 1 | 2 | 3 |

【 関連記事 】
0からのApache
第1回:Apacheを動かしてみよう
第2回:Apache設定の仕組み
第3回:Apache基本設定パート1
第4回:Apache基本設定パート2
第5回:Apache基本設定パート3
第6回:Apache基本設定パート4
第7回:Apache応用設定パート1
第8回:Apache応用設定パート2
第9回:Apache2.0応用設定3
第10回:Apache拡張設定(WebDAV編 その1)
第11回:Apache拡張設定(WebDAV編 その2)

サイト内全文検索
スタックアスタリスクのサイトを検索します。検索には、Googleを利用しています。そのため、最新の情報で検索されない可能性があります。


簡単レンタルメールフォーム
300メガ1000円〜 XBitのレンタルサーバー
500メガ1995円〜 電話サポート/PostgreSQL/専用SSLなどにも対応!お客様のニーズを網羅したレンタルサーバ
ホームページ制作のアシストウェブ
STACK* 執筆の講師陣から習得する!! ITエンジニアスクール アイティブースト
統合メールサポートシステム 〜MailDealer(メールディーラー)〜
システム開発,IT教育 〜株式会社アイティーブースト(ITBoost)〜
簡単 営業支援/顧客管理ツール Easy Sales
  利用規約 お問い合わせ・ご意見 スタックアスタリスクについて 運営会社について 
  レンタルサーバー ホスティング 専用サーバー メールフォーム ショッピングカート メール共有 ITエンジニア派遣 Linux講座 Java講座 メール配信 レンタルサーバー Webデータベース 検索サービス
CopyrightcRAKUS Co.,Ltd. All Rights Reserved.  メール管理・共有 顧客管理(CRM)もできるメール対応サポートシステム JAVA LINUX CISCO 技術者派遣 育成事業 株式会社ラクス