预订演示
前页 后页

使用您自己的证书颁发机构 (CA)

一般,最好使用由全球信任的根颁发机构 (CA) 签发的证书。许多 CA 都受到所有主流浏览器和操作系统的信任,并且可以用来签署用于https服务器的证书。

如果系统架构使得使用全球信任的 CA 不切实际,仍然可以将客户端浏览器和操作系统设置为信任自签名证书,从而避免安全错误或向最终用户显示警告。

一种方法是直接将证书添加到客户端浏览器或操作系统的信任库中;然而,每个生成的证书都需要执行此操作。更好的A是创建自己的根证书颁发机构 (Certificate Authority),并使用它为每个服务器证书进行签名。

为此,您需要使用您自己的证书颁发机构 (CA) 证书和密钥对 SSL 证书进行签名,并且需要告知客户端(浏览器、操作系统)信任该 CA 证书。根据所使用的操作系统或浏览器,向客户端添加 CA 证书的说明会有所不同。

创建证书颁发机构

创建证书颁发机构 (Certificate Authority) 证书的方法有很多,但 OpenSSL 工具包是最简单、功能最全面的工具包之一。顾名思义,OpenSSL 是一个用于 SSL/TLS 的源工具包;详情请参阅官方website 。您需要下载并安装适合您环境的 OpenSSL 产品。

要创建 CA,请按照以下两个步骤操作:

  1. 生成新的密钥和证书请求。
  2. 对请求进行自签名以生成 CA 证书。

1 .生成新的密钥和证书请求

这可以分多个步骤完成,也可以通过从现有密钥文件生成,但为了简单起见,可以在一个命令中生成新密钥和新请求。此示例显示如何为名为“我的公司”的公司创建请求。请将其更改为更适合您组织的名称:

  • openssl req -new -sha256 -nodes -newkey rsa:4096 -subj "/O=我的公司/CN=我的公司内部 CA" -keyout MyCompanyCA.key -out MyCompanyCA.csr

2. 自签名请求以生成 CA 证书

此步骤对 CA 证书请求进行自签名,并使 CA 的有效期为1年(第 365 天)。更改'我的公司

' 来匹配上一步生成的密钥和 csr 请求:

  • openssl x509 -req -sha256 -in MyCompanyCA.csr -signkey MyCompanyCA.key -days 365 -out MyCompanyCA.crt

创建服务器证书并使用 CA 对其进行签名

现在 MyCompanyCA.crt 已生成,它可以用于为云服务器或WebEA签署您自己的证书。

首先,像自签名 SSL 证书帮助主题中提到的那样,创建一个新的证书请求。此示例为名为“云.mycompany.com”的服务器创建一个新的密钥和证书请求:

  • openssl req -new -nodes -newkey rsa:4096 -subj "/CN=cloud.mycompany.com" -keyout云.mycompany.com.key -out云.mycompany.com.csr
使用 CA 签署新的证书请求:
  • openssl x509 -req -CA MyCompanyCA.crt -CAkey MyCompanyCA.key -CAcreateserial -sha256 -days 365 -in云.mycompany.com.csr -out云.mycompany.com.crt
使用专业云服务器的最后一步是将密钥和证书连接到“server.pem”文件中:
  • 窗口:复制/b云.mycompany.com.crt+cloud.mycompany.com.key server.pem
  • Linux: cat云.mycompany.com.crt云.mycompany.com.key > server.pem
有关配置专业云服务器以使用此证书的详细信息,请参阅使用 HTTPS (SSL)主题。

允许客户端信任根CA

客户端操作系统或浏览器现在需要将 CA 证书添加到其受信任的 CA 列表中。具体操作说明因操作系统和浏览器而异,但此处列出了一些主要客户端的说明。所有这些步骤中提到的“证书”均指节2 节中生成的“MyCompanyCA.crt”。

客户端(系统、浏览器)

指示

也见

微软窗口

右键单击 CA 证书文件,然后选择“安装证书”。按照提示将证书添加到信任存储中,无论是仅供当前用户使用还是供计算机所有用户使用。

Linux-Ubuntu

将 CA 证书复制到 /usr/local/share/ca-certificates

例如:

  • sudo cp ~/MyCompanyCA.crt /usr/local/share/ca-certificates/
使用此命令更新证书:
  • sudo更新 ca 证书
输出应显示类似于“Adding debian:~/MyCompanyCA.pem”的内容。

如果使用Wine ,则关闭所有Wine程序并重新启动Wine :

  • 葡萄酒服务器-k
请参阅Ubuntu帮助以获取更多信息。

火狐

Firefox 不使用操作系统信任存储,因此必须手动添加 CA。

如果证书具有“ .pem”扩展名,那么最简单的方法是将 CA 证书文件拖放到 Firefox 上;提示会提示您是否信任该证书。

否则,请手动添加证书并通过 Firefox 的隐私和安全偏好设置管理添加的证书。

更多信息可以在Firefox wiki上找到。

铬/铬

Chrome 和 Chromium 不使用操作系统信任存储,因此需要手动添加 CA。

打开设置 >高级> 管理证书 > 权限选择“导入”

Internet Explorer

Internet Explorer 使用窗口信任存储,因此将证书添加到窗口(参见此表中的第一个条目)足以为浏览器添加信任。

WebEA

WebEA使用 PHP/curl 与Pro模型进行通信。如果 PHP云云之间Pro连接使用 HTTPS,则可以将 CA 添加到 PHP 的配置中,以允许其信任该证书。

配置WebEA以信任您自己的证书颁发机构(CA)