我使用 openssl 在 ubuntu gnome 16.04 上创建自签名 CA 证书,并使用该 CA 证书为 postfix 和 httpd 签名证书,但在使用 tls 连接 postfix 时,命令为:
openssl s_client -connect xiedeacc.com:587 -starttls smtp
它会抱怨
并返回:
verify error:num=21:unable to verify the first certificate
Verify return code: 21 (unable to verify the first certificate)
但当将命令更改为
openssl s_client -connect xiedeacc.com:587 -starttls smtp -CAfile /etc/ssl/certs/xiedeaccca.crt
输出结果一切正常,没有问题,所以我猜是 openssl s_client 找不到这个自签名 CA,但是我手动将其导入 chrome 证书根列表后,chrome 可以访问这个 CA 签名的网站。那么,如何将其导入 Ubuntu 的证书根列表而不仅仅是 Chrome 的根证书列表?Ubuntu 是否像 Windows 一样存储 CA 证书?
答案1
要将您的自签名 CA 导入到 Ubuntu 的证书根列表,您必须配置ca-certificates
:
首先,创建一个名为/usr/share/ca-certificates/extra
:
sudo mkdir /usr/share/ca-certificates/extra`
然后,将您的 CA 证书复制到目录:
sudo cp /etc/ssl/certs/xiedeaccca.crt /usr/share/ca-certificates/extra/xiedeaccca.crt
最后,重新配置ca-certificates
:
sudo dpkg-reconfigure ca-certificates
按下Space
选择您的自签名 CA 证书,然后您就完成了。