3.17. SSL および TLS に関する問題のトラブルシューティング
本セクションでは、Secure Sockets Layer/Transport Layer Security (SSL/TLS) に関する問題の解決方法について説明します。
自己署名 SSL 証明書に関連する問題が発生している場合、本セクションで説明されているようにリモートホスト証明書をダウンロードして使用することができます。典型的なエラーの例としては、SSL certificate problem: self signed certificate
または self signed certificate in certificate chain
などがあります。
手順
openssl
を使用して、リモートホストの証明書をダウンロードします。以下に例を示します。$ echo | openssl s_client -showcerts -servername self-signed.badssl.com -connect self-signed.badssl.com:443 2>/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > self-signed-cert.pem
curl
を使用して、証明書が正常に機能していることを確認します。以下に例を示します。$ SSL_CERT_FILE=self-signed-cert.pem curl -v https://self-signed.badssl.com
証明書が正しく機能している場合は、SSL エラーが表示されることはなくなります。証明書が正常に機能していない場合は、
-k
オプション (または long 形式の--insecure
) を使用してcurl
コマンドの実行を試行します。これは、サーバーコネクションがセキュアでなくても、続行することを示しています。3scale
コマンドにSSL_CERT_FILE
環境変数を追加します。以下に例を示します。$ podman run --env "SSL_CERT_FILE=/tmp/self-signed-cert.pem" -v $PWD/self-signed-cert.pem:/tmp/self-signed-cert.pem egistry.redhat.io/3scale-amp2/toolbox-rhel7:3scale2.9 3scale service list https://{ACCESS_KEY}@{3SCALE_ADMIN}-admin.{DOMAIN_NAME}
この例では、Podman ボリュームを使用して、証明書ファイルをコンテナーにマウントします。これは、このファイルが現在の
$PWD
フォルダーにあることを前提としています。これ以外に、ベースイメージとして 3scale toolbox イメージを使用して専用の toolbox イメージを作成し、独自の信頼済み証明書ストアをインストールするアプローチもあります。
関連情報
- SSL 証明書の詳細については、Red Hat Certificate System のドキュメント を参照してください。
- Podman の詳細については、Red Hat Enterprise Linux 8 コンテナーの構築、実行、および管理 を参照してください。