• 締切済み

HTTPからHTTPSへの遷移

Webサイトを作成し、SSLを設定しました。 サーバー側では遷移を確認できサイトも表示されました。 しかし、クライアント側では遷移が出来ず、サイトが表示されません。 IISも正常に作動していますし、証明書も発行してあります。 何が足りないのでしょうか? 初歩的なことですか、DNSサーバーは必要ですよね? 因みに環境は、Winows 2000 Serverです。

みんなの回答

noname#238252
noname#238252
回答No.1

遷移検証の前に、httpsアクセスが可能かどうかは調査済みでしょうか。 (1)ファイアーウォールのポートを解放している。 443ポートがふさがっていると通信できません。うっかり忘れがちなポイントです。 (2)ブラウザのアクセスだけでなく、telnetで443ポートを叩いてみる。 http://takuya-1st.hatenablog.jp/entry/20120728/1345195451 telnetで返答があったら、ブラウザの表示に問題がありってことになるので、SSLの設定は問題ないと思われます。 (3)バインドがちゃんとできているかを調べる。 https://cspssl.jp/support/install_iis6_bind.html たぶんクリアされているとは思いますが。 あと、DNSサーバーがない状態でFQDNでアクセスしたい場合は、 クライアントのhostsファイルにFQDN情報を書いて検証するととっても楽です。 http://www.kurohama.net/f11.shtml

関連するQ&A

  • クライアント証明書を必須にすると接続できない

    社内のSSL環境を構築しておりますが、私の知識不足のためになかなかうまくいきません。 申し訳ありませんが、ご教授願えますでしょうか? ---テスト環境--- サーバA:www.XXXX.co.jp (Winodws Server 2008 R2 役割:IIS7.5、AD証明書サービス(スタンダート ルートCA)) サーバB:yyy.XXXX.co.jp (Winodws Server 2008 R2 役割:IIS7.5) クライアント1:IE7(WindowsXP)、IE9(Vista):クライアント証明書あり クライアント2:IE8(WindowsXP):クライアント証明書なし ---証明書--- サーバA(ルートCA認証局) |--サーバA:サーバAルートCAでサーバ証明書発行(IIS用:サイトのバインドに設定しSSLを設定(SSL設定:SSLが必須、クライアント証明書:必須)) |--サーバB:サーバAルートCAでサーバ証明書発行(IIS用:サイトのバインドに設定しSSLを設定(SSL設定:SSLが必須、クライアント証明書:必須)) |--クライアント1:サーバAルートCAでクライアント証明書発行 ---アクセス---  クライアント1→サーバAのサイト:表示/OK(正常にサイトを確認できる)  クライアント2→サーバAのサイト:表示/NG(サイトを確認できない)クライアント証明書がないので正しい ※クライアント1→サーバBのサイト:表示/NG(403 13のエラーとなり接続できない)クライアント証明書はルートCAの証明があるのに接続できない  クライアント2→サーバBのサイト:表示/NG(サイトを確認できない)クライアント証明書がないので正しい なぜサーバBのサイトへアクセスできないのでしょうか?ルートCAの証明書は有効となっているのですが?です。 ちなみにクライアント証明書のCRLは「http://www.XXXX.co.jp/」のcrlの場所となっています。 サーバBにAD証明書サービスをインストールし既存CAにてルートCAと利用すればよいのはわかるのですが、 インストールなしでできないものでしょうか?サーバを追加するたびにクライアント証明書を要求・発行しなくてもルートで承認している クライアントから接続できないのでしょうか? 証明書の発行、考えに問題があるのか分からないのですが、なにか回答があれば助かります。

  • 双方向SSL時にクライアント証明書が表示されない

    現在、顧客DMZ内にあるサーバに対し、インターネット上の 特定のクライアント様からサービスを利用できるように、 双方向SSLの環境を構築しておりますが、困った事があります。 詳細は次のようになります。長文となっておりますが、何卒ご教授 よろしくお願いいたします。 【1.現象】 ブラウザからSSLを行うサーバにアクセスすると、ポップアップボックスが表示され、 クライアントのブラウザの証明書ストアにあるクライアント証明書のうちどれを 使用するかが尋ねられますが、ボックスに何も表示されません。 【2.システム構成】 (1)アプリケーションサーバ  OS:Windows 2003 Server  WWWサーバ:IIS 6.0  サーバ証明書:セキュア・サーバID(ベリサイン社)  IIS設定:      ・サーバ証明書インストール      ・「セキュリティで保護されたチャネル (SSL) を要求する」にチェック      ・「クライアント証明書を要求する」を選択  ブラウザ:IE 6.0 (2)CA機関(個人持ち)  Win2003の証明書サービスを使用し、クライアント証明書を発行します。  ここで発行した証明書を(3)のクライアントに配布します。 (3)クライアント  OS:Windows XP SP2  ブラウザ:IE 6.0  (2)において、証明書サービスから発行したクライアント証明書を  クライアント機にコピーし、ダブルクリックし証明書をインストールしました。 ◆補足 ・上記(1)、(3)間でSSL通信を行います。 ・上記(1)、(2)、(3)は各々別マシンです。 ・上記(1)は社内ネットワーク上にあり、(3)はインターネット上から(1)にアクセスします。  (2)はネットワークに繋がっておらず独立しています。 ・上記(3)から(2)のアクセスにおいてクライアント証明書が表示されません。  また、試しに(1)において、(3)と同様の手順でクライアント証明書をインストールし、  (1)のブラウザを使用し(1)にアクセス(自マシンに対しhttpsアクセス)しましたが、  クライアント証明書が表示されませんでした。 【3.ご教授頂きたい事】 クライアントマシンのクライアント証明書が 表示されない原因、対処について教えてください。

  • SSL通信が行えない

    証明書サービスを使いIIS6.0にSSLを導入しました ローカルでは正常にSSL通信されますが インターネットからでは接続できません マシン構成は 2003serverにISAを入れ web公開で 別の2003serverにてIISが動作しています httpでアクセスすると 「httpsでアクセスしてください」 メッセージが出ますので httpsでアクセスすると 「サーバーが見つからないか、DNS エラーです。」に なってしまいます ローカルで直接https://(ローカルIP)/xxx/ と Webサーバーにアクセスすれば正常に表示されるので ISAを導入しているマシン設定だと思うのですが 設定を色々試したのですが上手く行きません お知恵をお願いします

  • HTTPS(SSL)の仕組みとセキュリティについて

    SSLの仕組みと,そのセキュリティについての質問です. 現在,HTTPSで利用するSSLの仕組みについて勉強をしています. しかしながら, 自身がSSLの仕組みについて正しく理解できているか分かりません. また,どうしても理解ができない点が何個かあり,質問させて頂く次第になりました. (様々な書籍やwebを拝見したのですが,いづれも腑に落ちませんでした...) そのため,まず大まかに私が理解しているHTTP上のSSLの仕組みを書き,最後に質問を書かせて頂こうかと思います. 長くなりますが宜しくお願い致します. ■主な登場人物 ・認証局  CA秘密鍵  CA証明書(公開鍵?)  CA証明書発行要求  ・証明書  KEYファイル(秘密鍵/公開鍵)  CSRファイル/申請書(issuer側の情報/公開鍵)  CRTファイル/サーバー証明書(CSRを認証局の秘密鍵で捻ったモノ) ■証明書の発行 1-1.証明書を発行したい者がCSRファイルという申請書を作成し,認証局に送ります.    →CSRには登録情報(issuer)やサーバー(証明書を発行したい者)の公開鍵などが含まれます. 1-2.認証局はCSRファイルが適切であれば,署名(subject)し,認証局の秘密鍵でCSRの中の公開鍵のみを暗号化します. 1-3.これがCRTファイルになり,証明書を発行したい者に送り返されます. この時,サーバー(証明書を発行した者)は認証局によって署名されたCRTファイルを持っています. 次にこれを利用したHTTPS通信について書きます. ■HTTPS通信 2-1.クライアントがサーバーに通信要請をします. 2-2.サーバーは証明書(CRT)をクライアントに送ります. 2-3.クライアントは送られてきたCRTが信頼できるか認証局の証明書(公開鍵)を使って検証します.    →CRTに埋め込まれているサーバーの公開鍵は認証局の秘密鍵によって暗号化されているので,これを認証局の公開鍵で複合化します.    →認証局の公開鍵はルート証明書といい,事前にブラウザに組み込まれているものとします. 2-4.クライアントは共通鍵を発行します. 2-5.クライアントはCSRから複合化したサーバーの公開鍵を用い,自身で発行した共通鍵を暗号化してサーバーに送ります 2-6.サーバーは受け取った暗号データを自身の持つ秘密鍵で複合化し,共通鍵を取得します. 2-7.後はこの共通鍵でデータを暗号化し通信します, ■質問 1.オレオレ証明書+認証局の場合でも正常に通信ができるのはなぜか 私の理解だと2-3で,クライアントが認証局の公開鍵を用い,サーバーの証明書からサーバーの公開鍵を複合化し,それを元に共通鍵を暗号化しています. これはクライアントが認証局のルート証明書(公開鍵)を保有しているから複合化できるはずです. オレオレ証明書の場合は,認証局の公開鍵がクライアントにインストールされていません. そのため,サーバーの公開鍵を複合化できず,共通鍵の生成に失敗し,通信できなくなると思います. しかしながら,ブラウザは「署名が不明な接続先です」とのエラーを出すだけで,通信(接続)ができてしまいます. なぜでしょうか. 2.IssuerとSubjectは暗号化されていないのか 私の理解だと1-2の認証局では,サーバーの公開鍵しか暗号化されていません. ということはIssuerとSubjectは暗号化されていないということでしょうか. また,それはなぜでしょうか. 3.IssuerとSubjectは偽装できるか opensshを用いることで認証局を構築することができます. この時に,Subjectの設定をベリサインの認証局と全く同じようにし, 証明書も,ベリサインの認証局を使っているサイトのIssuerと全く同じようにした場合, SubjectとIssuerが全く同じ証明書ができると思います. この場合は,本物の証明書と同様の証明書を複製できてしまうのでしょうか. できないとは思いますが,それはなぜでしょうか. 4.証明書の偽装は可能か ブラウザから証明書の情報を見ることができます.もちろんbyteデータのraw certificateも見ることができます. この情報を丸々コピーし,全く異なるサーバーに証明書として読みこませて通信した場合は, 署名されてしまうのでしょうか. されないとは思いますが,それはなぜでしょうか. (例えば,URL=CN情報が異なっているから確認できるとか..?それならCN情報だけ書き換えてしまえばいい?) 5.証明書の検証をするにはどうしたらよいか 証明書を検証をするには,その証明書を発行した認証局の公開鍵を利用するしかないのでしょうか. 例えば,サーバー証明書(CRT)のフィンガープリントsha1データを事前に保持さえしていれば, サーバーに証明書を示された際にCRTのフィンガープリントを比較すれば,特定のサーバーかどうか検証できるか・・? 6.MITMについて MITM攻撃により,証明書が途中で書きかわることが考えられます. この場合は,書き換わった証明書をどのように特定すればいいのでしょうか. 例えば,認証局のルート証明書がないなどが考えられますが, 仮に,Rapid SSLなどで署名されている証明書でMITM攻撃がされた場合どうなるでしょうか? この場合は,Issuerなどを比較するしかないように考えられます. しかし,Issuerはcsr申請の際にうまいこと,書き換えることができてしまいます. そう考えると,どのような対策ができるでしょうか フィンガープリントなどで比較することになるのでしょうか, フィンガープリントは偽装することができないのでしょうか. 以上となります. 様々な質問を書いてしまい,申し訳ありません 説明不足で乱文だとは思いますが, 分かる範囲でお答え頂けませんでしょうか. 宜しくお願い致します.

  • 証明書を使用した通信

    今回、自社のWebサーバ(IIS7.0)のセキュリティ強度を 高める為、SSLによる暗号化通信の実装を検討しています。 その際に、第三者機関の発行による「証明書」をサーバ側に インストールさえすれば、暗号化通信は実現できるのでしょうか?。 ブラウザはIE8を想定していますが、ブラウザ側には別途証明書の インストールや、設定変更は必要でしょうか?。 ※「クライアント証明書」というキーワードも見つけたのですが、これは不要でしょうか? アドバイスを頂けると助かります。

  • ブラウザのHTTPリクエストを参照したい

    画面遷移時にブラウザ側でHTTPリクエストがどのように発行されているかを参照する手段を探しています。 Webサーバー側でHTTPリクエストの内容をログに出力する方法はわかっているのですがサーバー操作は不可なのでクライアント側で参照する方法を探しています。 ツール、設定なんでもいいのでアイデアがあれば教えていただけないでしょうか。 よろしくお願い致します。

  • LAN上でDNSエラーとなります

    お世話になります。 社内LAN内でASPのページを閲覧したいのですが (Server としてはWindows Server 2003 の IIS6.0を使用) アドレスをhttp://IPアドレス/仮想ディレクトリ名/ファイル名 の場合は、どこからでも表示されるのですが、 http://コンピュータ名/仮想ディレクトリ名/ファイル名 にすると、クライアントによって、DNSエラーになってしまうところがあります。調べてみたのですが、DNSサーバの設定が必要ということが わかったのですが、これはIISを動かしているサーバ機で設定可能ですか?IISの設定で、サイトのプロパティのところで、「規定のWebサイト」の名前を「サーバ名」に変更したのですが、相変わらずDNSエラーとなるマシンがあります。サーバの知識が乏しいのですが、社内ネットワークのIPアドレスを管理しているネットワーク管理者に何か頼まないと無理なのでしょうか?(IISを動かしているマシンの設定だけではダメなのでしょうか?)初歩的な質問ですみません。 よろしくお願いいたします。

  • ■HTTPS通信の時の証明書について。■

    <構成図> 端末PC----WAN----Server(SSL,CA,WEB) <条件> 自己認証局(CA)により、https通信を検討しています。 認証方法としては、 1.サーバ証明書を利用する(URLのSection1)方法と 2.クライアント証明書を利用する(URLのSection2)があります。 <参考URL> http://park15.wakwak.com/~unixlife/practical/openssl.html ■質問1 端末PCから、Serverに通信するとき、 1.サーバ証明書の方法ですと、端末PCにサーバ証明書を入れなくても、 警告がでるが、通信はできそうですが、 2.クライアント証明書の方法も、端末PCにクライアント証明書をいれなくても、 警告がでるが、通信はできますか? ■質問2 上記の例だと、自己認証局(CA)による<条件>ですが、 外部CA認証局を利用する場合も、 1.サーバ証明書、2.クライアント証明書の方法ともに、 警告がでるが、通信はできるのでしょうか? 宜しくお願いします。

  • サーバの監視

    サーバの監視をしたいと思っています。例えば、いくつかあるサイトが正常に動いているかどうか、DNSは正常か、どれくらいアクセスがあるか等です。 何か便利なツールなどがありましたら教えて頂けないでしょうか。ちなみにサーバ側には何もインストールできませんので、クライアント側のみのツールで行いたいと思っています。 よろしくお願い致します。

  • [IIS7]インストールしたSSL証明書が消える

    サイトにhttpsで接続するため、Webサーバにジオトラスト社SSL証明書をインストールしようとしています。 環境:Windows 2008 Server R2 Standard、IIS7.0 下記のページを参考に、IIS7.0でのインストールは成功しました。 http://www.geotrust.co.jp/support/ssl/install/iis7_new.html サーバー証明書の一覧に、きちんと証明書が出てきます。 ところが、ページを切り替えたりF5を押したりすると、一覧から証明書が消えてしまいます。 当然サイトのバインドで証明書を指定することもできません。 調べようにもエラーメッセージも何も出ないため、手がかりがなく困っております。 アドバイスお願いいたします。