SSL証明書は一部のクライアントでのみ機能しますか?


11

ホスティングプロバイダーは、古いドメインのSSL証明書を誤って失効させた後、最近ドメインのSSL証明書再発行して再インストールしました

これで、HTTPSを介してWebサイトを再度閲覧できるようになりました。ホストも同様に、他の多くのユーザーも同様です。

ただし、一部のユーザー(少なくとも数百人のうち数十人)がYour connection is not secure、さまざまなブラウザやプラットフォームでエラーメッセージを受け取っています。(再現できない問題を診断するのは難しいことが証明されています。)

ブラウザごとに認証局(CA)のリストが異なることを理解しています。

  1. 私と同じバージョン(OS Xの45.0.1)のFirefoxを実行しているユーザーが、SEC_ERROR_UNKNOWN_ISSUER(私のサイトのみで)エラーを受け取っているのに、どうしてですか?何がそれを可能にしますか?ユーザーはキャッシュをクリアし、ラップトップを再起動しました。

私は走ったdigicert.com上のSSLチェックを。結果は次のとおりです。

SSL証明書は信頼されていません

証明書は、信頼できる機関によって署名されていません(Mozillaのルートストアと照合)。信頼できる機関から証明書を購入した場合は、おそらく1つ以上の中間証明書をインストールする必要があります。サーバープラットフォームでこれを行うには、証明書プロバイダーに問い合わせてください。

  1. この場合、SSLエラーなしでサイトに接続できるのはなぜですか?

1
My hosting provider has recently re-issued and re-installed an SSL certificate for my domain, after they let the old one expire by mistake.-この責任を彼らに任せたのはどうですか?
-joeqwerty

3
私はシステム管理者ではないから、管理された専用サーバーを彼らから借りています。(ちょっとしたバックグラウンドストーリーについては、ビジネスを運営する上で言語学習の資料とコードを書いているので、sysadminを行うことは、興味深いことですが、あまりにも多くのハットになります。)
Fabien Snauwaert

7
@joeqwerty:それは彼らの仕事だから?彼は文字通り、彼に代わってこのようなものを整理しています。
軌道の明るさレース

@LightnessRacesinOrbit:それは私がしなかった仮定なので、質問です。
joeqwerty

1
bugzilla.mozilla.org/show_bug.cgi?id=399324は、Firefoxで中間証明書を自動的にダウンロードするためのサポートを要求するバグレポートです。議論(現在8年)は、「IEがやる!」に要約されています。/「IEを地獄に落とすために、RFCはオプションだと言っています!」/「堅牢性の原則を聞いたことはありますか?」/「サーバーの構成が悪いため、気分が悪くなるはずです!」

回答:


22

証明書の証明書チェーンが不完全です。新しい証明書のインストール時に、プロバイダーが中間証明書のインストールに失敗した可能性があります。

ほとんどの場合、このような中間証明書は、一部の古いブラウザーとオペレーティングシステムのサポートを提供するために、SSL機関によって提供されます。それが理由です、それはあなたのために働くが、それはあなたのクライアントのいくつかのために働かない。

WebサイトでSSLの問題をチェックするための本当に素晴らしいユーティリティは、SSLlabsによるSSLサーバーテストです。上記のリンクでわかるように、ここでチェーンの問題があるだけでなく、証明書を作成するために使用される署名アルゴリズムも弱いものであり、Webサーバーは依然としてPOODLE攻撃に対して脆弱であり、RC4をサポートしています安全でないとも考えられます...

私はあなたのウェブサーバープロバイダーに対して何も言いたくはありませんが、あなたの立場で私はそれらをメールで送り、彼らはこの問題をできるだけ早く修正するか、別のプロバイダーに変更するでしょう...


ありがとう、それはとても助かります。好奇心から、OS Xのクライアントと同じバージョンのFirefoxが私と同じバージョンのFirefoxでSEC_ERROR_UNKNOWN_ISSUERエラーになっているのはなぜですか?彼のOSバージョンが違うのでしょうか?
ファビアンスナウワート

1
@FabienSnauwaertうん、「ハンドシェイクシミュレーション」までスクロールすると、SSLLabsテストはOS /ブラウザのさまざまなバージョンの組み合わせをシミュレートしようとします。ブラウザはSSL接続を単独で処理しませんが、OSの実装に一部依存しています。したがって、間違いなくOSバージョンが違いを生みます。
s1lv3r

3
クライアントがCAの異なるリストを持っているだけではありません。また、一部のクライアントが中間証明書をキャッシュして、中間証明書が正しく構成されているサイトにブラウザーが以前にアクセスしたことがある場合、中間証明書が欠落しているサイトが機能する可能性もあります。
カスペルド

SSLlabsサイトは素晴らしいツールです。参照いただきありがとうございます。
-Parapluie

12

証明書を信頼するには、ブラウザ/ OSの組み合わせによって信頼されているエンティティ、またはそのようなエンティティによって署名されているエンティティによって署名されている必要があります。これは通常、中間CAに署名する1つの信頼されたルートCAによって行われ、中間CAは証明書に署名します。これにより、次のようなチェーンが作成されます。

  1. コンピューターによって信頼され、署名されているルートCA
  2. 署名する中間CA
  3. ルートCAに戻るチェーンによってのみ信頼されている証明書。

ここでの問題は、中間CA証明書にあります。全員がルートCAに至るまでチェーンを検証できるようにするために、プロバイダーはサーバー構成に中間証明書を含める必要があります。この場合、彼らはそうではありません。

一部のユーザーで機能する理由は、自分の「トラストストア」に中間証明書があるためです。これらの場合、彼らはすでに中間体を信頼しているため、証明書を受け入れます。しかし、訪問者が異なるOS /ブラウザを持っている場合、彼らは中間証明書を持っていないので、彼らはあなたのウェブサーバーからそれを取得する必要があります-そして、あなたのウェブサーバーはそれを配りません検証中。


ありがとう、今私は問題をはっきりと見るのに役立ちます。ホストが証明書を修正するのを待っている間に、ユーザーに独自の「トラストストア」に中間証明書を追加させる方法はありますか?例:依存している別のSSLサイトにアクセスするなど
ファビアンスナウワート

1
@FabienSnauwaert残念ながら、トリックはありません。同じ中間証明書を持つサイトにアクセスするだけでは役に立ちません。実際に証明書をダウンロードし、ブラウザに手動で追加する必要があります。この特定の証明書は新しいブラウザーに含まれていると思います-Firefox 45.0.1で動作しますが、43.0.4では動作しないため、これら2つのバージョンの間に含まれています。そのため、クライアントにブラウザをアップグレードさせることができれば、それは助けになります。
ジェニーD

4
@JennyD中間証明書は最新のブラウザによってキャッシュされるため、同じ中間証明書を使用する別のサイトにアクセスすることはかなり可能です。しかし、それは実際にユーザーに尋ねるべきものではありません...(参照:bugzilla.mozilla.org/show_bug.cgi ?id=629558sslmate.com / blog / post / chrome_cached_sha1_chains
ボブ

0

HTTP公開キー固定を使用していて、プロバイダーが新しい証明書を提供した場合、公開キーは既に変更されている可能性があります。これらのキーは、指定した期間、クライアントのブラウザーに保存されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.