Apache ベーシック認証

ベーシック認証について説明し、実際にベーシック認証を設定してみます。

ディレクティブ

以下のディレクティブを使います。

・AllowOverride
・AuthType
・AuthName
・AuthBasicProvider
・AuthUserFile
・Require

AllowOverride

ディレクトリに対して認証の設定を行うので、AllowOverride ディレクティブには AuthConfig を設定します。

AuthType

ベーシック認証を設定するので AuthType ディレクティブには Basic を設定します。

AuthName

AuthName ディレクティブには任意の文字列を設定します。
任意の名称を命名します。

AuthBasicProvider

ファイルに記載しているユーザによる認証の許可を行う為、AuthBasicProvider ディレクティブには file を設定します。
なお、認証ユーザファイルの作成については以下を参照して下さい。

AuthUserFile

認証ユーザファイルのパスを指定します。
今回は、認証ユーザファイルは以下に作成しました。

・パス(ファイル名含む)
“/httpd-basic-auth/passwords”

なお、認証ユーザファイルの作成については以下を参照して下さい。

Require

認証されたユーザを全て許可するので Require ディレクティブには valid-user を設定します。

ベーシュク認証の設定

今回は バーチャルホストの機能を使用します。
バーチャルホストについては以下を参考にして下さい。

/www-basic ディレクトリをドキュメントルートとして公開し、公開したディレクトリに対してベーシック認証を設定します。
認証できた場合、ドキュメントルートのファイルが見れること確認します。
具体的な確認方法は http://test_b:4001 をブラウザから実行すると認証が画面が起動し、認証できた場合、”test”が表示されることを確認します。

ドキュメントルート用ディレクトリの作成

ドキュメントルートディレクトリを作成します。

・コマンド

動作確認用ファイルの作成

確認の為にブラウザに表示させるファイルを作成します。
内容は “test” と言う文字としますが内容はなんでも良いです。

・コマンド

バーチャルホストの設定

/etc/httpd/conf.d/vhost.conf に以下のバーチャルホストの設定を記載します。

ポイント
・Require all granted は設定しないでください。
・AllowOverride AuthConfig を設定します。

Apacheの設定読み込み

設定ファイルを変更しただけではApacheは設定を読み込んでくれません。Apacheを再起動すると変更した設定を読み込んでくれます。
ゆえに、Apacheを再起動します。

hostsの設定

ローカルPCのhostsを設定します。
test_b を ローカルIP(127.0.0.1)と紐付けることで、http://test_b が 127.0.0.1 のホストを参照するようにします。
いつもはlocalhostとすると127.0.0.1を見るようにしていますが、test_b でも 127.0.0.1 を見ることが可能にできるようにhostsを設定します。

今回は、127.0.0.1 を test_b と紐付けます。
以下を参考にして hosts 設定を行って下さい。

確認

ブラウザへ http://test_b:4001 を入力して下さい。 認証画面が起動することを確認します。
ログインユーザとパスワードを入力し、認証がOKの場合 “test” と表示されれば成功です。

最後に

特にありません。

© DeNnie.Lab All Rights Reserved.