ウェブサーバ - アクセス制限 - パスワードによって制限をかける

 クラウディア
1. 概要
2. パスワードファイル作成
3. コンフィグレーションファイルの設定
4. ログインの例

1. 概要

 例題は、以下の環境とします。
  項目     設定  
サイトの絶対パス /usr/local/www/data/hogehoge
制限する URL http://www.hogehoge.jp/hogehoge/
定義ファイル /usr/local/etc/apache22/Includes/hogehoge.conf
パスワードファイルパス /path
パスワードファイル passwd
ユーザ hogehoge

2. パスワードファイル作成

 パスワードファイルの管理には、「htpasswd」というコマンドを使用します。  (apache24 のインストール時に「/usr/local/bin」にインストールされています)  パスワードファイルを作成します。  パスワードファイル作成時に最低限、1ユーザを作成しなければなりません。

$ htpasswd -c /path/passwd hogehoge
New password:							← パスワードを入力
Re-type new password:					← パスワードを再入力
Adding password for user hogehoge
 「-c」オプションは、作成する「create」という意味です。  その先のパラメータは、パスワードファイル名を示しています。  「/path/passwd hogehoge」の「/hogehoge/passwd」は、パスワードファイル名の指定です。  「hogehoge」はパスワードを設定するユーザアカウント名です。  パスワードとして入力した文字は、エコーバックされません。  打ち間違えると、ユーザアカウントが作成されないので、もう一度コマンドを入力するところからやりなおします。  ユーザを追加する場合は以下のようにします。

$ htpasswd /path/passwd fugafuga
New password:							← パスワードを入力
Re-type new password:					← パスワードを再入力
Adding password for user fugafuga
 これで、ユーザ「fugafuga」が作成されます。  パスワードの変更時も同じコマンドで「-c」オプションをつけないことで変更できます。  ユーザアカウントを削除するときは、パスワードファイルをテキストエディタで開いて、対象のユーザアカウントの行を削除します。

3. コンフィグレーションファイルの設定


/usr/local/etc/apache22/Includes/hogehoge.conf
 に以下のように記述します。

<Directory  "/usr/local/www/data/hogehoge">

・・・	略	・・・

    AuthType        Basic
    AuthName        "Welcome to hogehoge"
    AuthUserFile    /path/passwd
    Require         valid-user
</Directory>
 「AuthType」は、認証機構の種別を指定するものですが、パスワードによる基本認証を行う場合は、「Basic」にします。  「AuthName」は、パスワード入力画面の、「領域:」として表示させるメッセージです。  必ず、ダブルクォーテーションでくくります。  中身には、自分の好きなメッセージや、領域を示す内容を記述します。メッセージの表示形式はブラウザによっても異なります。  「AuthUserFile」は、パスワードファイルを指定するものです。  パスワードファイルを置くディレクトリやファイル名は自由ですが、セキュリティ上、ウェブサーバのドキュメントルート外におくべきです。  「require valid-user」は、認証されたユーザにしか、アクセスさせないという定義です。  「.htaccess」に書く場合は、「/usr/local/etc/apache22/Includes/hogehoge.conf」の上記記述を削除して。  「.htaccess」に以下のように記述します。

AuthType        Basic
AuthName        "Welcome to hogehoge"
AuthUserFile    /path/passwd
Require         valid-user
 「/usr/local/etc/apache22/Includes/hogehoge.conf」を変更した場合は、再起動

service apache24 configtest
service apache24 graceful
 「.htaccess」を変更した場合は、即時反映されます。

4. ログインの例

 設定したサイトにアクセスすると、「Firefox(64.0)」の場合、下記のように表示されます。
「Firefox」-「パスワード入力」

 「Vivaldi(2.2.1388.37)」の場合、下記のように表示されます。

「Vivaldi」-「パスワード入力」

 なるほど、「AuthName」の内容が、「Firefox」では表示され、「Vivaldi」では表示されていません。

ハイスピードプラン