将 Windows Server 配置为具有 AWS CloudHSM 的证书颁发机构 (CA)
在公有密钥基础设施 (PKI) 中,证书颁发机构 (CA) 是一个颁发数字证书的可信实体。这些数字证书通过公有密钥加密和数字签名的方式,将公有密钥与身份(用户或组织)绑定。要操作 CA,您必须通过保护签署由 CA 颁发的证书的私有密钥来维持信任。您可以将此私有密钥存储至 AWS CloudHSM 集群的 HSM,然后使用 HSM 执行加密签名操作。
在本教程中,您将使用 Windows Server 和 AWS CloudHSM 配置 CA。在 Windows Server 上安装适用于 Windows 的 AWS CloudHSM 客户端软件,然后将 Active Directory 证书服务 (AD CS) 角色添加到 Windows Server。配置此角色时,您使用 AWS CloudHSM 密钥存储提供程序 (KSP) 在您的 AWS CloudHSM 群集中创建并存储 CA 的私有密钥。KSP 是连接 Windows Server 与 AWS CloudHSM 群集的桥梁。在最后一个步骤中,您使用 Windows Server CA 签署证书签名请求 (CSR)。
有关更多信息,请参阅以下主题:
主题
步骤 1:设置先决条件
要将 Windows Server 配置为具有 AWS CloudHSM 的证书颁发机构 (CA),您需要以下各项:
-
一个带至少一个 HSM 的活动 AWS CloudHSM 群集。
-
一个运行 Windows Server 操作系统的 Amazon EC2 实例,其中安装有适用于 Windows 的 AWS CloudHSM 客户端软件。本教程使用的是 Microsoft Windows Server 2016。
-
一个加密用户 (CU),该用户拥有和管理 HSM 上的 CA 私有密钥。
设置具有 AWS CloudHSM 的 Windows Server CA 的先决条件
-
完成入门中的步骤。启动 Amazon EC2 客户端时,选择 Windows Server AMI。本教程使用的是 Microsoft Windows Server 2016。完成这些步骤后,您有一个至少包含一个 HSM 的活动集群。您还有运行 Windows Server 操作系统的 Amazon EC2 实例,其中安装有适用于 Windows 的 AWS CloudHSM 客户端软件。
-
(可选) 向您的集群添加更多 HSM。有关更多信息,请参阅 向 AWS CloudHSM 集群添加 HSM。
-
连接到您的客户端实例。有关详细信息,请参阅《Amazon EC2 用户指南》中的连接到您的实例。
-
通过使用 CloudHSM CLI 管理 HSM 用户或使用 CloudHSM 管理实用程序 (CMU, CloudHSM Management Utility) 管理 HSM 用户来创建加密用户(CU) 跟踪 CU 用户名和密码。您需要这些信息才能完成下一步。
-
使用您在上一步中创建的 CU 用户名和密码设置 HSM 的登录凭证。
-
在步骤 5 中,如果您使用 Windows Credentials Manager 来设置 HSM 凭证,请从 SysInternals 下载
psexec.exe
,并以 NT Authority\SYSTEM 身份运行以下命令: psexec.exe -s "C:\Program Files\Amazon\CloudHsm\tools\set_cloudhsm_credentials.exe" --username
<USERNAME>
--password<PASSWORD>
将
<username>
和<password>
替换为 HSM 凭证。
要创建具有 AWS CloudHSM 的 Windows Server CA,请转到创建 Windows Server CA。
步骤 2:使用 AWS CloudHSM 创建使用 Windows Server CA
要创建 Windows Server CA,您将向 Windows Server 添加 Active Directory 证书服务 (AD CS) 角色。添加此角色时,您使用 AWS CloudHSM 密钥存储提供程序 (KSP) 在您的 AWS CloudHSM 群集中创建并存储 CA 的私有密钥。
注意
创建 Windows Server CA 时,您可以选择创建根 CA 或从属 CA。您通常根据组织的公有密钥基础设施和安全策略的设计制定此决策。本教程介绍了如何创建根 CA 以简化操作。
向 Windows Server 添加 AD CS 角色和创建 CA 的私有密钥
-
如果您尚未完成此操作,请连接到您的 Windows 服务器。有关详细信息,请参阅《Amazon EC2 用户指南》中的连接到您的实例。
在 Windows 服务器上,启动服务器管理器。
在服务器管理器控制面板中,选择添加角色和功能。
阅读开始之前信息,然后选择下一步。
对于安装类型,选择基于角色或基于功能的安装。然后选择下一步。
对于服务器选择,选择从服务器池中选择服务器。然后选择下一步。
-
对于服务器角色,请执行以下操作:
-
选择 Active Directory 证书服务。
-
对于添加 Active Directory 证书服务所需的功能,选择添加功能。
-
选择下一步完成选择服务器角色。
-
对于功能,接受默认值,然后选择下一步。
对于 AD CS,请执行以下操作:
-
选择下一步。
-
选择证书颁发机构,然后选择下一步。
-
对于确认,阅读确认信息,然后选择安装。不要关闭该窗口。
选择突出显示的配置目标服务器上的 Active Directory 证书服务链接。
对于凭据,请验证或更改显示的凭证。然后选择下一步。
对于角色服务,选择证书颁发机构。然后选择下一步。
对于设置类型,选择独立 CA。然后选择下一步。
对于 CA 类型,选择根 CA。然后选择下一步。
注意
您可以选择根据公有密钥基础设施和您组织的安全策略的设计创建根 CA 或从属 CA。本教程介绍了如何创建根 CA 以简化操作。
-
对于私有密钥,选择新建私有密钥。然后选择下一步。
-
对于加密,请执行以下操作:
-
对于选择加密提供程序,从菜单中选择一个 Cavium 密钥存储提供程序。这些是 AWS CloudHSM 密钥存储提供程序。例如,您可以选择 RSA # Cavium 密钥存储提供程序。
-
对于密钥长度,从中选择一个密钥长度选项。
-
对于选择用于签署此 CA 颁发的证书的哈希算法,请选择其中一个哈希算法选项。
选择下一步。
-
对于 CA 名称,请执行以下操作:
-
(可选)编辑公用名。
-
(可选)键入可分辨名称后缀。
选择下一步。
-
对于有效期,指定时间段(以年、月、周或天为单位)。然后选择下一步。
对于证书数据库,您可以接受默认值,也可以选择更改数据库和数据库日志的位置。然后选择下一步。
对于确认,请查看有关 CA 的信息;然后选择配置。
选择关闭,然后再次选择关闭。
现在您就拥有了一个具有 AWS CloudHSM 的 Windows Server CA。要了解如何使用 CA 签署证书签名请求 (CSR) 的信息,请转到签署 CSR。
步骤 3:使用具有 AWS CloudHSM 的 Windows Server CA 签署证书签名请求(CSR)
您可以使用具有 AWS CloudHSM 的 Windows Server CA 签署证书签名请求 (CSR)。要完成这些步骤,您需要一个有效的 CSR。可以通过以下方法来创建 CSR:
-
使用 OpenSSL
-
使用 Windows Server Internet Information Services (IIS) 管理器
-
使用 Microsoft 管理控制台中的证书单元
-
在 Windows 上使用 certreq 命令行实用程序
创建 CSR 的步骤不在本教程的介绍范围之内。如果您有 CSR,则可使用您的 Windows Server CA 登录。
使用 Windows Server CA 登录 CSR
-
如果您尚未完成此操作,请连接到您的 Windows 服务器。有关详细信息,请参阅《Amazon EC2 用户指南》中的连接到您的实例。
-
在 Windows 服务器上,启动服务器管理器。
-
在服务器管理器控制面板的右上角,选择工具、证书颁发机构。
-
在证书颁发机构窗口中,选择您的计算机名称。
-
在操作菜单上,选择所有任务、提交新请求。
-
选择 CSR 文件,然后选择打开。
-
在证书颁发机构窗口中,双击 待定的请求。
-
选择待定的请求。然后在操作菜单上,选择所有任务、颁发。
-
在证书颁发机构窗口中,双击 已发出的请求以查看签署的证书。
-
(可选)要将签署的证书导出到文件中,请完成以下步骤:
-
在证书颁发机构窗口中,双击证书。
-
选择详细信息选项卡,然后选择复制到文件。
-
按照证书导出向导的说明操作。
-
您现在有了具有 AWS CloudHSM 的 Windows Server CA 和由 Windows Server CA 签署的有效证书。