Apacheでbasic認証
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/698apachebasic.html
1. パスワードファイルの作成
ユーザ名とパスワードを(多分暗号化して)記録したファイルを作成する。ディレクトリやファイル名は任意。(認証したいディレクトリとは別でもよい。というか別の方がよい)
# htpasswd -c [ファイルパス] [ユーザ名] 例) # htpasswd -c /etc/apache2/.htpasswd test
この後パスワードを2回入力
2人目以降は
# htpasswd [ファイルパス] [ユーザ名] 例) # htpasswd /etc/apache2/.htpasswd test2
でOK
2. 設定ファイルの変更
設定ファイルの適切な場所に以下を追加(今回は[/etc/apache2/mods-available/userdir.conf])
<Directory "[認証したいディレクトリ]"> AuthType Basic AuthName "[認証名]" AuthUserFile [1で作成したパスワードファイル名] Require [許可するユーザ] </Directory> 例) <Directory "/var/www/html/member"> AuthType Basic AuthName "Secret Directory" AuthUserFile /etc/apache2/.htpasswd Require test test2 </Directory>
認証名は実際の認証時ポップアップに表示される。
Requireは[valid-user]にすると登録した全ユーザになる。普通はこっちを使う。
3. Apache再起動
# /etc/init.d/apache2 restart
以上。
Linuxのユーザ名と同期できないかなぁ。
basicでは難しいか・・・?
追記
PAMとかいうの使うとできそう。
また今度。