改めて知っておきたいRed Hat Enterprise Linux 4 - ネットワークサービス編 1

ApacheのDigestによるログイン認証

ApacheのDigestによるログイン認証


   続いて、Apacheを使用している場合に、Webサイトにログイン認証(アクセス制限)をかける設定方法について解説します。Apacheで利用可能なアクセス制限には、大きく分けて次の2つがあります。
  1. basic認証:パスワードがネットワーク上を平文で流れるため、キャプチャソフトで簡単にクラック可能。
  2. digest認証:パスワードが暗号化されてネットワーク上を流れるため、basic認証に比べてセキュアな環境を実現可能。

表3:Apacheで利用可能なアクセス制限

   インターネット上にWebサーバとして公開する場合、セキュリティの観点から2のdigest認証によるアクセス制限を推奨します。社内LANのようにファイアウォール内でネットワークそのものが比較的セキュアで信頼できる場合はbasic認証を利用しても良いでしょう。

   例えばメーリングリストのログをインターネット上の公開したWebサーバで閲覧できるようにしたいケースでは、内容を第三者に読まれないためにdigest認証を採用します。次は「test1-hp-ml」と「test2-hp-ml」の2つのメーリングリストの公開ログに対して実際にアクセス制限をかける手順を解説します。


Webサーバのhttpd.confファイルを編集


   まずWebサーバ側のhttpd.confファイルを編集します。ここではWebサーバ上の/work/www/html/mhonarc/test1-hp-ml以下のディレクトリと/work/www/html/mhonarc/test2-hp-ml以下のディレクトリにあるWebコンテンツに対して、digest認証を設定しています。

   また/work/www/html以下のWebコンテンツがクライアントからhttp経由によるアクセスを可能にするには、httpd.confファイルにDocumentRootとして/work/www/htmlが設定されている必要がありますので注意してください。

# cd /etc/httpd/conf/ ← 設定ファイルが保存されているディレクトリに移動
# vi httpd.conf ← viで設定ファイルを編集
(中略)
<Directory "/work/www/html/mhonarc/test1-hp-ml"> ← Digest認証の対象ディレクトリ
AuthType Digest ← 認証方式を「Digest」に指定
AuthName "Please enter user name and password" ← 認証時に表示するメッセージ
AuthDigestFile /work/www/html/mhonarc/test1-hp-ml/.htdigest ← 認証ファイルの場所を設定
Require user test1-hp-ml ← Digest認証でログインさせるユーザ(test1-hp-ml)
</Directory>
<Directory "/work/www/html/mhonarc/test2-hp-ml"> ← Digest認証の対象ディレクトリ
AuthType Digest ← 認証方式を「Digest」に指定
AuthName "Please enter user name and password" ← 認証時に表示するメッセージ
AuthDigestFile /work/www/html/mhonarc/test2-hp-ml/.htdigest ← 認証ファイルの場所を設定
Require user test2-hp-ml ← Digest認証でログインさせるユーザ(test2-hp-ml)
</Directory>

   このように設定することで、クライアント側がWebブラウザで上記2つのWebサイトを見ようとすると、ユーザ名とパスワードによる認証が行われます。

※注1: Webサーバでアクセス制限を行う場合、Linux側のアカウントとして「test1-hp-ml」および「test2-hp-ml」をadduserコマンドなどで作成する必要はありません。ここで認証に使われているユーザはApache固有のもので、/etc/passwd登録されたユーザとは無関係です。


Webサービスを再起動


   digest認証の設定が終了したら、次のコマンドを実行してWebサービスを再起動します。

# service httpd restart ← httpdサービスを再起動

   このときhttpdのサービスを再起動するだけで設定が反映されます。OSの再起動は必要ありません。

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る