私はこの件についてかなりグーグルで調べたのですが、どうやら私のグーグルの力ではだめだったようです。もしこれが些細な質問で既に回答済みのものだったら申し訳ありませんが、これについては何も見つけられませんでした。
SSL 証明書のホスト名の不一致を診断しようとしています。問題の URL にアクセスすると、正しい SSL 証明書を持つ別のページにリダイレクトされます。ただし、一部のクライアントは SSL 証明書のホスト名の不一致エラーが発生していると報告しています。私の唯一の推測は、リダイレクト ページの証明書が間違っており、正しい証明書を持つ新しいページで解決されるため、一部のクライアントがそれを無視しているということです。
(この問題の「なぜ」と「どのように」は、実際には問題ではありません)
質問:
外部から内部(つまり、世界のクライアントとして) - 別のページに自動的にリダイレクトするページによって配信された証明書をどのように表示するのでしょうか?
答え1
使用openssl s_clientパイプでオープンSSLX509:
$ openssl s_client -connect foo.example.com:443 < /dev/null | openssl x509 -text
(-servername foo.example.com
追加s_クライアントサーバーが使用するコマンドスニ。
openssl の最初の呼び出しで stdin を /dev/null からリダイレクトすると、入力を待機してハングすることがなくなります。
答え2
Firefox 57 で、開発者ツールを開いて [ネットワーク] タブに移動すると、次のようになります。
Persist Logs
チェックが入っていることを確認してください- 興味のあるURLにアクセスしてください
- 一番上の行(つまり、リダイレクト応答をもたらした、関心のあるサーバーへのリクエストに対応する行)をクリックします。
- タブをクリックします
Security
( 内の半分下Network
)
これにより、発行者の共通名、発行者の詳細、有効期間、フィンガープリントなどの証明書情報を表示できます。
これは、別のHTTPSウェブサイトへの301リダイレクトで応答するサイトではうまくいきました。(残念ながら、受け入れられた回答最終目的地ページの証明書を頂きました。
答え3
また、詳細なテキスト トレースを備えた Windows 用のグラフィカル ツールもあります。SSL 証明書検証ツールツールの説明:ツールでSSL証明書を検証するリダイレクトを処理する方法の例を次に示します。
答え4
リダイレクトが失敗するように URL を変更してみてください。例:https://www.example.com/>
サーバーによっては、リダイレクトする代わりにエラーを返す URL にアクセスできる場合があります。たとえば、IIS サーバーにアクセスしている場合、>
URL に追加した URL にはエラー ページが表示されますが、リダイレクトが発生しないため、証明書は通常どおりに表示できます。