Webサーバの基本「Apache」
2006年12月7日(木)
ApacheのDigestによるログイン認証
続いて、Apacheを使用している場合に、Webサイトにログイン認証(アクセス制限)をかける設定方法について解説します。Apacheで利用可能なアクセス制限には、大きく分けて次の2つがあります。
- basic認証:パスワードがネットワーク上を平文で流れるため、キャプチャソフトで簡単にクラック可能。
- digest認証:パスワードが暗号化されてネットワーク上を流れるため、basic認証に比べてセキュアな環境を実現可能。
インターネット上に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の再起動は必要ありません。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。