プロが教えるわが家の防犯対策術!

BASIC認証にて、.htpasswdファイルにMD5化されたパスワードが定義された状態で、
ブラウザより認証を行なうと、平文で認証が行われ、認証が失敗してしまいます。

ブラウザより、MD5化されたパスワードをコピペで入力すると認証が成功します。
いろいろなサイトを見ましたが、特に設定しなくてもMD5で比較してくれるものと思います。

家にマシンが3台あり、centosにもともとインストールされているapacheではMD5で認証してくれており、windowsにインストールしたapacheでは失敗します。全て2.2です。

MD5で認証するにはどうしたらよいでしょうか。(DIGEST認証ではなくBASIC認証が必要です。)

A 回答 (2件)

md5形式で格納されたパスワードは、「$apr1$」というヘッダが


ついた形で格納されますが、そのようになっていますか?
(参考) http://www.bjlug.org/ml-archive/oct02/msg00028.h …

Apacheは、パスワードファイルのパスワードを照合する時、
「$apr1$」というヘッダがついているものをmd5形式で格納されて
いると認識します。
それ以外は、Windows版Apacheの場合、暗号化なしで
そのままパスワードが格納されていると認識します。
(Linux版Apacheの場合は、crypt()で暗号化したものが
格納されていると認識します。)

Apache付属のhtpasswdコマンド以外のツールでパスワードを
生成しているのでしょうか?
「$apr1$」というヘッダがパスワードの頭についていない
のであれば、そのパスワード作成ツールはmd5形式を
サポートしてないのかもしれません。
    • good
    • 0

この辺りを参考に。



参考URL:http://www.aconus.com/~oyaji/tips/apache_tips2.htm

この回答への補足

ご回答ありがとうございます。
つまり、サンプルでいう「c:\apache2\bin\htpasswd」を実行してパスワードファイルを作成する必要があるということでしょうか?
よくフリーのツールで.htpasswdを作成してくれるものがありますが、
それで作成したファイルをそのまま利用したい場合、どうすればよいのでしょうか?
何かhttpd.confに設定が必要なのかなーと想定しております。

補足日時:2010/11/02 16:45
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!