将公司证书设置为受信任

将公司证书设置为受信任

我的公司给了我一个文件company_CA.crt,我需要使用它来访问我们的一个客户的网站。

当我尝试在 macOS 上添加它时,我所要做的就是单击该文件,然后在导入后将其设置为“始终信任”。

我想在 Ubuntu 上做同样的事情,所以我遵循了以下步骤:

  • 将 CRT 文件复制到usr/local/share/ca-certificates/my_company
  • 跑步sudo update-ca-certificates

但我仍然无法打开网站。我是不是错过了什么步骤?

答案1

  • 检查您的系统是否已知您的 customer_web_site 的 CA 根证书。

    $ curl -I  https://customer_web_site
    curl: (77) Problem with the SSL CA cert (path? access rights?)
    

系统中确实不知道 customer_web_site 服务器的 CA 证书。

文件 company_CA.crt 必须是 CRT 格式。(在本例中似乎是这样的)如果它是 PEM 格式,那么你必须转换它(openssl x509 -in xxxx.pem -inform PEM -out xxxx.crt

  • 在 Ubuntu 中安装 CA 文件

将 company_CA.crt 文件复制到 /usr/share/ca-certificates 中的新目录 extra

让 ubuntu 获取新的 CA 证书并将其安装在 Linux 系统中

sudo dpkg-reconfigure ca-certificates

会出现一个菜单。选中“询问”选项,提示每个新的 CA 证书。您将看到您的新证书。

额外的/company_CA.crt

按空格键选择新的 CA 证书文件并选择确定。

最后,你应该看到类似这样的内容:

已添加 1 个,已删除 0 个;已完成。正在 /etc/ca-certificates/update.d 中运行钩子...

检查 curl 是否在未指定 CA 证书文件的情况下工作

$ curl -I https://customer_web_site
HTTP/1.1 200 OK
Date: Thu, 06 Sep 2018 18:08:26 GMT
Server: Apache/2.4.18 (Ubuntu)
Last-Modified: Fri, 27 Jul 2018 12:09:02 GMT
ETag: "2c39-571f9fa3671da"
Accept-Ranges: bytes
Content-Length: 11321
Vary: Accept-Encoding
Content-Type: text/html

有用。

如果您想了解有关自签名证书的更多信息以及如何使用它们,请查看我的github

相关内容