我如何获取 ca-certificates.crt?

我如何获取 ca-certificates.crt?

我的docker出现错误“x509证书由未知机构签名” ,然后我发现我的ubuntu容器缺少文件ca-certificates.crt或。此错误的解决方案是添加/etc/ssl/certs//usr/local/share/certificates/ca 证书.crt到 */usr/local/share/certificates/** 文件夹并运行update-ca-certificates命令。但我的问题是我不知道在哪里获取该 .crt 文件。

答案1

这是我修复该问题的方法:

docker run -v /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt --name test image

我从docker主机(Centos)上的文件ca-certificates.crt创建一个绑定卷到容器,并让容器使用它来验证受信任的ca。

答案2

获取证书,运行类似于下一个命令:

openssl req -newkey rsa:2048 -nodes -keyout nginx/my-site.com.key -x509 -days 365 -out nginx/my-site.com.crt

另外,你可以使用这些说明

DAYS=1460
PASS=$(openssl rand -hex 16)

# remove certificates from previous execution.
rm -f *.pem *.srl *.csr *.cnf


# generate CA private and public keys
echo 01 > ca.srl
openssl genrsa -des3 -out ca-key.pem -passout pass:$PASS 2048
openssl req -subj '/CN=*/' -new -x509 -days $DAYS -passin pass:$PASS -key ca-key.pem -out ca.pem

相关内容