設置サポート

トップ > 設置サポート

記事表示

SSL利用時に管理用パスワードが認証されない。 from たなか

こんにちわ、たなかと申します。

Reserve Systemを設置・利用させて頂こうと思っております。

SSL利用時に管理用パスワードが上手く認証されず、パスワードエラーで「パスワードが違います。」というメッセージが表示されます。
(非SSL時はパスワード認証されます。)

お客様の利用申し込みのパスワードはSSL利用時も問題なく認証されます。

エラー時のアドレスは
https://ss2.xrea.com/yoyaku.605h.com/reserve/index.php?mode=admin&work=status
となっています。

サーバの仕様の問題なのかもしれませんが、何か心当たりが御座いましたら御教授お願いします。

サーバはxreaを使用しています。
http://www.xrea.com/

サーバ名:s286.xrea.com
Apache 1.3.37
PHP 4.4.6
MySQL 4.0.27

xreaのSSLについてのFAQ
http://sb.xrea.com/showthread.php?threadid=6646

設置URL
http://yoyaku.605h.com/reserve/
  • No.3
  • MAIL
  • 2007/11/28 10:57

Re: SSL利用時に管理用パスワードが認証されない。 from ないと

こんにちはー。

> SSL利用時に管理用パスワードが上手く認証されず、パスワードエラーで「パスワードが違います。」というメッセージが表示されます。

ご指摘ありがとうございます。
調べてみましたが、SSL利用時にURL(パス)が変化するサーバーの場合、この現象になるようです。(セキュリティ対策に、ログイン状態を保持できるディレクトリを限定しているため。)
対策ですが、reserve/index.php の210行目あたりにある

$info = parse_url(HTTP_PATH);

この部分を以下のように変更してみてください。

if (isset($_SERVER['HTTPS']) and $_SERVER['HTTPS'] != 'off') {
$info = parse_url(HTTPS_PATH);
} else {
$info = parse_url(HTTP_PATH);
}

恐らくこれでログインできるようになると思います。
大丈夫でしたら、配布プログラムもすべて修正しておきますね。

ではー。

  • No.4
  • 2007/11/28 16:52

Re: SSL利用時に管理用パスワードが認証されない。 from たなか

お忙しいところ、お返事ありがとうございます。

ご指摘の部分を変更してみたのですが、同じ現象になってしまいました。

変更後
/* セッション開始 */
function session()
{
if (isset($_SERVER['HTTPS']) and $_SERVER['HTTPS'] != 'off') {
$info = parse_url(HTTPS_PATH);
} else {
$info = parse_url(HTTP_PATH);
}

session_set_cookie_params(SESSION_LIFETIME, $info['path']);
session_start();

return;
}

結果報告まで。
こちらも引き続き調査します!

設置URL
http://yoyaku.605h.com/reserve/
  • No.5
  • 2007/11/28 22:02

Re: SSL利用時に管理用パスワードが認証されない。 from ないと

うむむ、駄目ですか。今のところ他に原因が思いつかないのですが…。

ログイン状態の保持にはセッションを使用するのですが、SSL使用時にセッションが利用できるかどうか、以下のプログラムでチェックしてみてください。

まず、以下の内容を記述した test.php を作成し、reserve ディレクトリ内にアップロードします。(文字コードは何でも大丈夫です。)

<?php

session_set_cookie_params(0, '/yoyaku.605h.com/reserve/');
session_start();

if (isset($_SESSION["count"])) {
$_SESSION["count"]++;
} else {
$_SESSION["count"] = 1;
}

echo 'count:' . $_SESSION["count"];

?>

その後、https://ss2.xrea.com/yoyaku.605h.com/reserve/test.php にアクセスしてみてください。
上のプログラムはページの表示回数をセッションでカウントするプログラムですが、ページを表示するたびに数値がカウントされていけば成功です。
なお、test.php にアクセスする直前には、一旦すべてのブラウザを閉じてからお試しください。(ブラウザを閉じるまで、前回のセッションを保持するように作ってあるので。)

カウントされた場合、PHP Reserve 側に何らかの問題がある可能性があります。

カウントされない場合、session_set_cookie_params の行を削除して再度試してみてください。それでカウントされれば、xreaではSSL使用時、セッションが有効になるディレクトリを限定できない…ということになりそうです。
その場合、PHP Reserve の index.php 内にある session_set_cookie_params の行を削除すればログインできるはずです。(あまり好ましくない記述なのですが。)
session_set_cookie_params を削除してもカウントされない場合、xrea ではSSL使用時にセッションを利用できない…ということになります。流石にそれは無いと思いますが…。

Googleで調べてみても、それらしい情報は見つけられなかったので、もしかしたら原因は全然違うところにあるのかもしれません。
怖くなければ、メールでFTPのログイン情報を送っていただければ、実際にxrea上で色々とセッションのテストをしてみます。

ではー。

  • No.6
  • 2007/11/29 10:01

Re: SSL利用時に管理用パスワードが認証されない。 from たなか

test.phpをアップロードしてみました。
こちらのブラウザでは無事カウントアップされます。

ちなみに、PHP Reserve の index.php 内にある session_set_cookie_params の行を削除するとパスワード認証されます。

$info['path']が意図するものに設定されていないのでしょうか。。。

やっぱりxrea上でテストして頂いた方がいいような気がします。。。(力不足でごめんなさい)

後ほどメール致します!

設置URL
http://yoyaku.605h.com/reserve/test.php
  • No.7
  • 2007/11/29 14:37

Re: SSL利用時に管理用パスワードが認証されない。 from たなか

自己解決しました!

Xrea.com さんのサーバでは、環境変数 HTTPS の on, off を取得でないようです。

というわけで、index.phpの
function session()の部分を

/*変更前*********************************/
if (isset($_SERVER['HTTPS']) and $_SERVER['HTTPS'] != 'off') {
$info = parse_url(HTTPS_PATH);
} else {
$info = parse_url(HTTP_PATH);
}

/*変更後*********************************/
if (isset($_SERVER['HTTP_VIA']) and $_SERVER['HTTP_VIA'] != 'off') {
$info = parse_url(HTTPS_PATH);
} else {
$info = parse_url(HTTP_PATH);
}


とすると、アクセスできるようになりました。
が、これでセキュリティ上問題ないのかちょっと気になります。
汎用的なコーディングではないかもしれないし。。。

参考にしたurlも記述しておきますね。
☆SSL暗号通信による Movable Type について
http://www.osbsd.net/2004/07/ssl_movable_typ_5341.html

☆SSL通信への対応(≡ Drupal Japan ≡)
http://drupal.jp/node/331

設置URL
http://yoyaku.605h.com/reserve/
  • No.8
  • 2007/12/03 17:53

Re: SSL利用時に管理用パスワードが認証されない。 from ないと

お知らせありがとうございます~。XREAは、特殊な仕様のサーバーだったのですね。
今後の参考にさせていただきます。

ではー。

  • No.9
  • 2007/12/14 11:42

Re: SSL利用時に管理用パスワードが認証されない。 from たなか

お久しぶりです、たなかです。

お礼を言い忘れていたので^^;再び参上しました。

いろいろ対応して頂いてありがとうございます。

来年もいい年になりますように☆

  • No.11
  • 2007/12/28 11:19

記事投稿

ナビゲーション