profaim  >  関連ソフトウェア  >  開発ソフトウェア  >  Apache(Webサーバ)  >  Apache Digest認証  >  Directoryで認証設定

Directoryディレクティブ で Digest認証 を設定

記載日:2006/09/10
Apache 2.2.2 FedoraCore 5

1.Directory に Digest認証 を適用

ここでは Directory に Digest認証 の設定を行う手順を説明します。 Digest認証 を設定すれば、 Apache 経由でその Directory にアクセスしてくるユーザに対しダイアログを表示してユーザ認証を行うことができます。 Digest認証 ではパスワードが暗号化されてでネットワークに流れるので、パスワードが通信経路で盗聴されてしまうことはありません。ただし、Digest認証 をサポートしているウェブブラウザは Internet Explorer 5.0以降や、Netscape 7.0以降、 Firefox などということなので、どのブラウザからアクセスされるかわからない状況では使用は避けた方が良さそうです。

今回は、以下の環境で Digest認証を設定しました。

設定項目 設定値
Apache のインストールディレクトリ /usr/local/apache2
テストページのパス(サーバ上のパス) /usr/local/apache2/htdocs/digest/index.html
テストページにアクセスする URL http://testserver/digest/
Digest認証 に使用するパスワードファイル /home/profaim/pass/.DigestFile
パスワードファイルに登録されたユーザ profaim-user1
登録ユーザのパスワード test

2.Directory への Digest認証 設定手順

2-1.httpd.conf 編集準備

Digest認証 の設定は Apache の設定ファイル httpd.conf に行います。 httpd.conf は Apache がインストールされたディレクトリの conf にあります。 「cd (Apache がインストールされたディレクトリ)/conf」と入力して httpd.conf が置かれたディレクトリに移動します。  その中にある httpd.conf を編集できるユーザで エディタを使って開きます。 viエディタ を使う場合は 「vi httpd.conf」 と入力します。

$ cd /usr/local/apache2/conf
$ su
Password:
# vi httpd.conf
#

2-2.httpd.conf  に Digest認証 の設定を追加

http.conf の任意の場所に Directory タグを追加して Digest認証 を設定します。今回は以下の設定を行いました。

<Directory /usr/local/apache2/htdocs/digest>
  AuthType Digest
  AuthName "profaim-test-member"
  AuthUserFile /home/profaim/pass/.DigestFile
  <Limit GET POST>
    Require valid-user
  </Limit>
</Directory>

[Directory]
Directory には認証をさせるディレクトリを指定します。ここで指定したディレクトリ以下のサブディレクトリを含む領域のファイル全てが認証の対象となります。ディレクトリはファイルシステムのパスを絶対パスで指定します。

[AuthType]
AuthType には認証方式を指定します。 Digest認証を行うので "Digest" で固定です。

[AuthName]
AuthName は認証されるこの Directory の領域名を指定します。領域には好きな名前が付けられますが、Digest認証 ではユーザを登録する時にも領域名を指定するので同じ名前を付ける必要があります。

[AuthUserFile]
AuthUserFile には Digest認証用に作成したパスワードファイルのパスを指定します。パスワードファイルはファイルシステムの絶対パスで指定します。Digest認証 用のパスワードファイルを作成する方法は  Apache Digest認証用ユーザ作成 が参考になると思います。

[<Limit>]
<Limit GET POST>はウェブページを参照するGETまたはPOSTメソッドに対して制限をかけるという宣言です。どういう制限かというと<Limit>から</Limit>で囲まれた部分のRequire valid-userです。これは認証されたユーザが必要だという意味です。このDirectoryには認証されたユーザのみが GET POST でページを参照できるようになります。

2-3.設定を反映する

httpd.conf を編集したら Apache を再起動します。 「cd (Apache がインストールされたディレクトリ)/bin」と入力して Apache の実行ファイルが置かれたディレクトリに移動します。「./apachectl restart」と入力して Apache を再起動します。

# cd /usr/local/apache2/bin
# ./apachectl restart
#

3.動作確認

3-1.Digest認証 を適用したページへのアクセス

Digest認証ウェブブラウザを起動して、Digest認証を設定したウェブページの URL を指定します。 (今回は http://testserver/digest/ )Digest認証 の設定が正しく行われていれば、 ユーザ認証をするためのダイアログが表示されます。

 

Digest認証を適用したページへアクセス表示されたダイアログに、Digest認証 のパスワードファイルに登録されたユーザとパスワードを入力すればウェブページの内容が表示されます。(今回はユーザが profaim-user1 、パスワードが test1)

以上で Digest認証 の設定と動作確認は完了です。



  Apache(Webサーバ)  
Apacheセットアップ(Linux)
Apacheダウンロード
APRダウンロード
ApacheSource転送
APR Source 転送
Apacheインストール
Apache 設定(Linux)
実行ユーザを指定
Apache + PHP(Linux)
複数バージョンのPHPを混在
Apache Basic認証
認証用ユーザ作成
Directoryで認証設定
Locationで認証設定
Apache Digest認証
認証用ユーザ作成
Directoryで認証設定
Locationで認証設定

PR
検索
カスタム検索