3.17. SSL 和 TLS 故障排除
本节介绍如何解决安全套接字层/交易层安全性(SSL/TLS)的问题。
如果您遇到与自签名 SSL 证书相关的问题,您可以下载和使用远程主机证书,如本节所述。例如,典型的错误包括 SSL 证书问题:
。
自签名证书或
证书链中的自签名证书
步骤
使用
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
选项(或其长形式--insecure
)运行curl
命令。这表示即使对于其他被视为不安全的服务器连接也一样希望继续。将
SSL_CERT_FILE
环境变量添加到3scale
命令。例如:$ 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 上构建、运行和管理 Linux 容器。