Gnu / LinuxがWindowsのデフォルトの信頼証明書を信頼できるようにする方法は?

Gnu / LinuxがWindowsのデフォルトの信頼証明書を信頼できるようにする方法は?

あるサーバーでSSLチェーンが失われたことが報告されました。このSSLチェック:

SSL検査レポート

私もこれが問題であることを知っていますしなければならないサーバー自体では解決しますが、時々解決が難しい場合もあります。 (私はサーバー管理者ではありません。)

問題はWindowsのChrome / Mozilla / Edgeです。何があってもウェブサイトの証明書を信頼してください:

ここに画像の説明を入力してください。

ただし、Gnu / Linux展開(DockerのUbuntu 18.04)では、証明書は次のとおりです。いいえ信頼できる:

curl: (60) SSL certificate problem: unable to get local issuer certificate

update-ca-certificatesGlobalsignルート証明書のインポートも試みました。update-ca-certificatesこの場合、重複証明書が報告されます。とにかく何も動作しません。

再生方法

ドッカーの使用:

docker run -it ubuntu:18.04

# within container:
apt-get update
apt-get -y install curl
curl https://betriebsheft.vog.it  # <---- "unable to get local issuer certificate"

Gnu / Linuxにこの証明書を信頼させる方法は?

PS:同じ証明書他のサーバーに正しくデプロイ

ベストアンサー1

実際の解決策は、サーバーが存在することを確認することですみんな最終エンティティ(サーバー)証明書ではなく、チェーンの証明書です。

サーバー管理者に教えてくださいRFC 5246セクション7.4.2これは明らかに言うこのメッセージはサーバーの証明書を転送します。チェーン顧客に。


curl管理者が何らかの理由でこれを拒否または実行できない場合、代替案は誤ったハンドシェイクを処理することです。

Curlメーリングリストのメッセージによると:

cURLが中間証明書をサポートしているか(またはサポートしていないか)確認できますか?

はい、そうです。すべてのCA証明書には、ルートまでの証明書チェーンがあります。カールで使用されるCAバンドルには、チェーン全体を含む証明書が必要です。

/daniel.haxx.se

ルートCAとすべての中間証明書をバンドルに追加し、オプションを使用してcurlそれを指すことができる必要があります--cacert <file>

ブラウザが機能すると、そのブラウザは正しいCA証明書にアクセスできます。 [証明書]タブ(ブラウザによって異なりますが理解していると確信しています)で、証明書チェーンを確認してください。まず、ルートCAをダブルクリックします。Globalsign ルート CA - G1そして詳細タブ、クリックファイルにコピー...root.cer別の名前で保存してください。AlphaSSL CA-SHA256-G2issuing.cer両方のファイルを1つのファイル(たとえばchain.cer)にリンクし、それをの引数として使用します-cacert

@ABが親切に指摘したように、失われた証明書も見つけることができますここ


ブラウザはCA証明書をキャッシュするため、正しく動作します。過去のある時点で、サーバー証明書と同じCAによって発行された証明書を使用して適切に設定されたWebサイトに移動した場合、ブラウザはWebサイトをキャッシュします。後で誤って設定されたサイトにアクセスすると、ブラウザはキャッシュ内のCA証明書を使用してチェーンを構築します。すべてが大丈夫だと思いますが、その背後にはサーバーが誤って設定されています。

Windowsでは、IE / EdgeとChromeは同じキャッシュを共有しますが、Firefoxは独自のキャッシュを使用します。

上記に加えて、IE / EdgeとChrome(同じ暗号化スタックを共有するため)は証明書で次の名前を使用します。信頼できる情報へのアクセス。一つあるカード発行会社オプションは、最終エンティティ証明書をダウンロードできるCA証明書のURLを提供します。したがって、これらのブラウザのいずれかが以前のナビゲーションで失われた証明書をキャッシュしない場合でも、必要に応じて証明書を取得できます。 Firefoxはこれを行いませんので、IE / EdgeとChromeが動作しているように見えると、Firefoxに証明書エラーが表示されることがあります。

おすすめ記事