2011.05.30
ApacheにBasic認証を入れる
簡易的に限られた人しか見れないようにするBasic認証についてまとめてみる
手順
1. htpasswdでパスワードファイルを作成
$ htpasswd -c (パスワードファイル) (ユーザー名)
htpasswdはApacheのbin内にある
オプション-cは新規作成、パスワードファイルを新しく作成するときにつける
ユーザーの追加時は -c をつけなければよい
2. httpd.confの修正
Basic認証をするDirectoryやLocationに以下のものを追加
AuthType Basic
AuthName "Admin Page"
AuthUserFile (パスワードファイル)
Require valid-user
Requireではログインできるユーザーを指定できる
valid-userはAuthUserFileに書かれているすべてを許可する
特定のユーザーだけ許可するときは以下のようにする
Require user userid [userid] ...
3. Apacheの再起動
設定反映のためにApache再起動
備考
これである程度はセキュリティが保持されるが
Basic認証の都合上、パスワードは平文で送信されるようなので通信監視されたらすぐばれてしまう。
そこまで気にするのであればDigest認証を使えば暗号化は可能だが
対応するブラウザが限られる
もっというとそこまで気にするのであればWebから見れるようにするのは
問題があるということになる
関連記事