Lab 4 - Deploying a Single Tier Public Key Infrastructure (PKI) Infrastructure


标题: 实验 4 - 部署单层公钥基础设施 (PKI) 基础设施 权重: 4


摘要

使用 AWS Directory Service for Microsoft Active Directory ,如果我们想启用 LDAP over SSL,我们将需要部署企业公钥基础设施 (PKI)。在本实验中,我们将将单层 PKI 部署与 AWS Managed Microsoft AD 集成。由于这是一个实验,并且由于时间限制,我们只需进行最小配置即可部署功能性的单层 PKI 部署。如果我们想了解如何部署完整的两层 PKI 部署和配置,请使用我们发布的 AWS 博客此处 。或者如果我们想自动部署,请参考 AWS PKI 快速入门此处

完成本实验中的说明后,我们将拥有:

  1. 部署了单层 Microsoft 企业证书颁发机构。

  2. 创建了 LDAP over SSL 证书模板。

  3. 为我们的 AWS Managed Microsoft AD 域控制器颁发了证书。

准备我们的 AWS Managed Microsoft AD 安全组

首先,我们需要调整我们的 AWS Managed Microsoft AD 目录的出站安全组,这将允许从我们的域控制器进行证书自动注册。

  1. 登录 AWS Management Console 并打开 AWS Directory Service 控制台 导航窗格,选择目录

  2. 记下我们将部署 CA 的目录的目录 ID

  3. 导航到 AWS EC2 控制台

  4. 在左侧导航窗格中,选择网络和安全 > 安全组

  5. 过滤安全组对话框(位于顶部)中输入步骤2中的目录 ID,然后按键盘上的Enter键。

  1. 我们只会在控制台中看到一个返回的安全组,选择该安全组,切换到出站规则选项卡,并选择编辑出站规则

  2. 选择添加规则所有流量作为类型自定义作为目标。在目标框中输入 CIDR 10.0.0.0/24。选择保存规则

如果我们的 CIDR 不在 10.0.0.0/24 范围内,请输入适当的 CIDR。

验证 CA 实例的安全组

接下来,我们需要验证我们的 CA 实例 (MAD-MGMT01) 的入站安全组是否允许从我们的域控制器进入 TCP 135 和 TCP 49152 - 65535。

  1. 打开 AWS EC2 控制台

  2. 选择我们将部署 CA 角色的 EC2 实例。

  3. 在实例详细信息中选择安全选项卡,然后选择列出的一个安全组。

  4. 确保我们位于入站规则选项卡。

  5. 如果我们看到两条规则,一条是 TCP 135,另一条是 TCP 49152 - 65535,目标是 10.0.0.0/24,请跳过6并继续下一部分。

如果我们的 CIDR 不在 10.0.0.0/24 范围内,请输入适当的 CIDR。

  1. 如果这些规则不存在,请通过选择编辑入站规则来添加它们:

       a. 选择添加规则自定义 TCP作为类型135作为端口范围目标。在目标框中输入我们的 VPC 的 CIDR。

       b. 选择添加规则自定义 TCP作为类型49152-65535作为端口范围目标。在目标框中输入我们的 VPC 的 CIDR。选择保存规则

以 PowerShell 方式部署单层 Microsoft 企业证书颁发机构

  1. 打开 AWS Systems Manager Fleet Manager - Remote Desktop 控制台

  2. 选择添加新会话,选择名为 MAD-MGMT01 的节点,然后选择添加

  3. 选择用户凭据,输入以下内容,然后选择连接

       a. 用户名: corp\Admin

       b. 密码: 在 MadAdminSecret 密钥中。

我们可以在此处 获取密码密钥检索说明。

  1. 右键单击开始并选择Windows PowerShell (管理员)。在提升的 Windows PowerShell 窗口中运行:
# 包含 CA 部署配置的变量
$Inf = @(
    '[Version]',
    'Signature="$Windows NT$"',
    '[PolicyStatementExtension]',
    'Policies=InternalPolicy',
    '[InternalPolicy]',
    'OID=1.2.3.4.1455.67.89.5', 
    'Notice="Legal Policy Statement"',
    '[Certsrv_Server]',
    'CRLPeriod=Weeks',
    'CRLPeriodUnits=1',
    'CRLDeltaPeriod=Days',  
    'CRLDeltaPeriodUnits=0',
    'LoadDefaultTemplates=0',
    'AlternateSignatureAlgorithm=0',
    '[CRLDistributionPoint]',
    '[AuthorityInformationAccess]'
)

# 将上述变量写入文件
$Inf | Out-File -FilePath 'C:\Windows\CAPolicy.inf' -Encoding 'ascii'

# 安装 CA Windows 功能
Install-WindowsFeature -Name 'Adcs-Cert-Authority' -IncludeManagementTools

# 安装和配置企业 CA
Install-AdcsCertificationAuthority -CAType 'EnterpriseRootCA' -CACommonName 'MyCA' -KeyLength '2048' -HashAlgorithm 'sha256' -CryptoProviderName 'RSA#Microsoft Software Key Storage Provider' -ValidityPeriod 'Years' -ValidityPeriodUnits 5 -Force 

保持登录到 MAD-MGMT01 实例,因为我们将在后续步骤中使用它。

以 MMC 方式部署单层 Microsoft 企业证书颁发机构

接下来,我们将部署 PKI 基础设施。我们将从先决条件为 Microsoft Windows Server 企业 CA 配置该实例。

  1. 右键单击开始并选择Windows PowerShell (管理员)。在提升的 Windows PowerShell 窗口中运行:
# 包含 CA 部署配置的变量
$Inf = @(
    '[Version]',
    'Signature="$Windows NT$"',
    '[PolicyStatementExtension]',
    'Policies=InternalPolicy',
    '[InternalPolicy]',
    'OID=1.2.3.4.1455.67.89.5', 
    'Notice="Legal Policy Statement"',
    '[Certsrv_Server]',
    'CRLPeriod=Weeks',
    'CRLPeriodUnits=1',
    'CRLDeltaPeriod=Days',  
    'CRLDeltaPeriodUnits=0',
    'LoadDefaultTemplates=0',
    'AlternateSignatureAlgorithm=0',
    '[CRLDistributionPoint]',
    '[AuthorityInformationAccess]'
)

# 将上述变量写入文件
$Inf | Out-File -FilePath 'C:\Windows\CAPolicy.inf' -Encoding 'ascii'
  1. 打开服务器管理器,选择管理,然后选择添加角色和功能

要打开服务器管理器,请导航到开始菜单 | 服务器管理器

  1. 添加角色和功能向导将弹出,选择下一步下一步下一步

  2. 选择服务器角色屏幕中,勾选Active Directory 证书服务,弹出窗口将出现,选择添加功能,选择下一步,选择下一步,选择下一步,选择下一步,然后选择安装

  1. 安装进度屏幕上,选择在目标服务器上配置 Active Directory 证书服务

  1. AD CS 配置向导将出现,在第一个屏幕上选择下一步

  2. 勾选证书颁发机构并选择下一步

  3. 选择企业 CA并选择下一步

  1. 选择根 CA并选择下一步

  1. 选择创建新的私钥,选择下一步

  1. 对于CA 的加密,保留默认设置,然后选择下一步

  2. 此 CA 的通用名称设置为 MyCA,然后选择下一步

  1. 对于有效期,保留默认设置,然后选择下一步

  2. 对于CA 数据库,保留默认设置,然后选择下一步

  3. 选择配置

  4. 选择关闭两次。

保持登录到 MAD-MGMT01 实例,因为我们将在后续步骤中使用它。

创建 LDAP over SSL 证书模板

在本节中,我们将创建一个新的证书模板,该模板将颁发给我们的 AWS Managed Microsoft AD 域控制器。在本节中,我们只会涵盖使用 GUI 的过程。Microsoft 没有为此提供本机 PowerShell cmdlet,虽然还有其他使用 PowerShell 的方法,但这已超出本实验的范围。但是,如果我们想看看代码是什么样的,请参考此处

  1. 使用 AWS Managed AD 用户帐户 corp\Admin 登录我们的加入域的 Windows Server EC2 实例。

  2. 打开服务器管理器,选择工具,然后选择证书颁发机构

要打开服务器管理器,请导航到开始菜单 | 服务器管理器

  1. 证书颁发机构 MMC 应该出现,展开 MyCA

  2. 右键单击证书模板并选择管理

  1. 证书模板控制台中,右键单击**Kerberos