TOP > Linux > Fedoraの技 > 101-200 > 110
ユーザ名とパスワードでアクセス制限するには(Digest認証)
apacheではBasic認証でユーザの制限をかけることが出来ますが、この場合パスワードがそのまま平文で流れるのであまり利用はお勧めできません。モジュール"mod_auth_digest"を利用したDigest認証ではパスワードを暗号化して通信を行いますのでより安全です。最近のブラウザではほとんどこのDigest認証に対応しています。
下記は専用のsecretディレクトリを作り、そこにアクセス制限をかける例です。
# mkdir /var/www/html/sercret
# chown apache:apache /var/www/html/secret
# vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/html/secret"> 10行追加します
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
AuthType Digest
AuthName "Restricted User"
AuthDigestFile /etc/httpd/conf/fedora500_digest
Require valid-user
</Directory>
新規認証ファイルを作るために"-c"オプションを利用します。オプションの後には"AuthDigestFile"で設定したファイル名、続いて"AuthName"で設定した文字列、最後にユーザ名を指定します。
# htdigest -c /etc/httpd/conf/fedora500_digest "Restricted User" john
Adding password for john in realm Restricted User.
New password: パスワードを入力
Re-type new password:
httpdをリロードして指定のページ(この場合 http://www.fedora500.jp/secret/)にアクセスすると下記のようなユーザ認証が求められます。
# service httpd reload
認証ファイルのオーナはapacheユーザに変更し、パーミッションを600とするとより安全でしょう。
# chown apache:apache /etc/httpd/conf/fedora500_digest
# chmod 600 /etc/httpd/conf/fedora500_digest
2005-12-03 作成