web-dev-qa-db-ja.com

SSL「ローカル発行者証明書を取得できません」:「フルチェーン」と「ルート」?

概要

要約すると、いくつかの証明書関連ファイルといくつかの証明書関連の手順がありますが、どのファイルがどれであるかわかりません!

背景

acme.sh を使用して、LetsEncryptから証明書をインストールしました。

そのプロセスからの出力は次のようになります。

[Sat Aug 18 02:50:24 UTC 2018] Your cert is in  /home/ubuntu/.acme.sh/www.foobar.xyz/www.foobar.xyz.cer
[Sat Aug 18 02:50:24 UTC 2018] Your cert key is in  /home/ubuntu/.acme.sh/www.foobar.xyz/www.foobar.xyz.key
[Sat Aug 18 02:50:24 UTC 2018] The intermediate CA cert is in  /home/ubuntu/.acme.sh/www.foobar.xyz/ca.cer
[Sat Aug 18 02:50:24 UTC 2018] And the full chain certs is there:  /home/ubuntu/.acme.sh/www.foobar.xyz/fullchain.cer

したがって、Nginxを構成した後、これは、従来のブラウザーを介して https://www.foobar.xyz にリクエストが行われたときにすべて機能します。

問題

しかし、Curlを介して同じリクエストを行うと、次のようになります。

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

したがって、これを修正するには2つの方法があるようです。

  • 問題を無視するか、認証局のクライアント側リストをcurlに提供するようにCurlに指示します。
  • サーバー上の証明書を変更する

質問

2番目のオプションであるサーバーでの変更が必要です。 このページに手順が記載されています 具体的に行う方法について...

2)1つのバンドルファイルで中間証明書を受け取った場合、またはアカウントの証明書ファイルをダウンロードした場合は、次のコマンドを使用できます。

cat example_com.crt bundle.crt >> ssl-bundle.crt

連結されたファイルを、Nginxサーバー上のSSL証明書のあるディレクトリに配置します。

私が抱えている問題は、acme.shを実行して生成されたファイルのどれがexample_com.crtとbundle.crtに対応しているかわからないことです。

Bundle.crtはwww.foobar.xyz.cerに対応していると思いますか?

しかし、example_com.crtが何に対応するのかわかりませんか?

1
glaucon

バンドルはfullchain.cer。を含む ca.cerおよびwww.foobar.xyz.cer

1
RalfFriedl