LoginSignup
27
31

More than 5 years have passed since last update.

もう詰まらない、Digest認証の設定

Last updated at Posted at 2017-06-20

はじめに

Digest認証で設定するたびにうまくいかないことが多かったので、実際に設定できた手順を紹介します!

OS:CentOS6.8
Apache:2.2

・まずはDigest認証のファイルを作成します。

IDとPWは下記のものを変更して下さい。
ID:123456
PW:11112222

/var/hoge/の部分は設置したいページのドキュメントルートに合わせて適宜変更して下さい。

Digest Zoneはわかりやすい名前を適宜つけましょう。

% sudo htdigest -c /var/hoge/.htdigest 'Digest Zone' 123456
Adding password for 1431050 in realm Digest Zone.
New password:11112222
Re-type new password:11112222

・digest認証のモジュールが有効か確認。

cd /etc/httpd/conf
sudo cp httpd.conf httpd.conf.bk
sudo vim /etc/httpd/conf/httpd.conf
LoadModule auth_digest_module modules/mod_auth_digest.so

バックアップは忘れずに。
この時LoadModule auth_digest_moduleがコメントアウトされていたら外しましょう。

・Apacheのconfファイルにダイジェスト認証の設定を追記

Digest認証のファイルを作成
のときに指定した、/var/hoge/.htdigestとDigest Zoneと完全に一致している必要があるので注意して下さい。

sudo vim /etc/httpd/conf.d/hoge.conf

 <Directory "/var/hoge/">
      Options FollowSymLinks
      AllowOverride None
      Order deny,allow
       AuthType Digest
       AuthName "Digest Zone" 
       AuthUserFile "/var/hoge/.htdigest" 
       Require valid-user
  </Directory>

・Apacheを再起動し設定を反映

sudo /etc/init.d/httpd restart

ダイジェスト認証の設定が適用され、ページにアクセスすると、IDとPWを要求されるはずです。
これでダイジェスト認証の設定はOKです。

特定のIPに対してダイジェスト認証なしでアクセスを許可する設定

実は、社内からのアクセスだけダイジェスト認証無しでお願い!なんて要望にもばっちり応えることが出来ます。

/etc/httpd/conf.d/hoge.confに下記内容を追記

Satisfy Any                                                           
Order deny,allow                                                      
deny from all                                                         
Allow from XXX.XXX.XXX.XXX NNN.NNN.NNN.NNN
sudo vim /etc/httpd/conf.d/hoge.conf

  <Directory "/var/hoge/">                                            
      Options FollowSymLinks                                                 
      AllowOverride None                                                                                                      
       AuthType Digest                                                       
       AuthName "Digest Zone"                                                
       AuthUserFile "/var/hoge/.htdigest"                            
       Require valid-user                                                    
       Satisfy Any                                                           
       Order deny,allow                                                      
       deny from all                                                         
       Allow from XXX.XXX.XXX.XXX NNN.NNN.NNN.NNN                                     
  </Directory>

Allow fromで指定したIPからアクセスすると、Digest認証が要求されないようになりました!
これで安全なIPアドレスからのアクセスでいちいち認証する必要がなくなりました!

27
31
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
31