在ubuntu系统中安装RootCA证书到信任库
【注意】最后更新于 December 14, 2022,文中内容可能已过时,请谨慎使用。
企业环境中会建立本地证书颁发机构 (CA),用来颁发证书在组织内部使用。
为了让 Ubuntu 服务器在企业环境中成为信任的主机并正常运行,这个 CA 必须安装在 Ubuntu 系统的信任库中。
本文记录了 Ubuntu 系统下的一些具体操作方法:
- 如何识别 PEM 和 DER 格式
- 如何安装 PEM 格式的证书
- 如何将 DER 格式转换为 PEM 格式
如何识别 PEM 和 DER 格式
在 Ubuntu 信任库中安装证书,它必须采用 PEM 格式。 PEM 格式的证书采用 base64 格式,以 ----BEGIN CERTIFICATE---- 的行开头。
如果在证书文本中看到了这样内容的行,基本是可以安装的。如果不是,则很可能是 DER 证书,需要进行转换。
如何安装 PEM 格式的证书
假设 PEM 格式的根 CA 证书保存在 local-ca.crt 文件中,按照以下步骤可以完成安装。
注意:文件的扩展名为 .crt 很重要,否则将会被程序忽略。
$ sudo apt-get install -y ca-certificates
$ sudo cp local-ca.crt /usr/local/share/ca-certificates
$ sudo update-ca-certificates
在此之后,我们就可以使用 Ubuntu 的工具(如 curl 和 wget)连接到 该CA 签发证书的站点了。
如何将 DER 格式转换为 PEM 格式
将名为 local-ca.der 的 DER 格式证书转换为 PEM 格式,命令如下:
$ sudo openssl x509 -inform der -outform pem -in local-ca.der -out local-ca.crt
CA 信任库的位置
由 update-ca-certificates 生成的 CA 信任库位于以下位置:
- 单个文件(PEM 包): /etc/ssl/certs/ca-certificates.crt
- OpenSSL 兼容证书目录: /etc/ssl/certs