本页面介绍如何为 Managed Service for Microsoft Active Directory (Managed Microsoft AD) 启用基于 SSL/TLS (LDAPS) 的 LDAP,以确保 LDAP 流量的机密性和安全性。默认情况下,对于简单 LDAP 绑定,Managed Microsoft AD 与客户端应用之间的通信不会加密。
如要启用 LDAPS,您必须拥有证书。本页面还介绍了所需证书的规范以及如何验证和监控该证书。
请求证书
您可以向 Public Certificate Authority 机构 (CA)、企业 CA、Google Cloud 证书授权机构服务申请证书,也可以使用自签名证书。如果您使用的是自签名证书,请按照以下部分中链接到 PowerShell 命令的 Microsoft 文档进行操作。
您可以在 Windows、OpenSSL 或 MakeCert 上使用 New-SelfSignedCertificate
命令创建自签名证书。
证书要求
您的证书必须满足以下要求:
- 下表概述了创建自签名证书的要求,并列出了
New-SelfSignedCertificate
命令中使用的相关参数。 请注意,参数或字段名称可能会因创建证书的方式而异。
参数 | 说明 |
---|---|
Subject (主题名称) |
此值必须是 Managed Microsoft AD 网域的带通配符前缀的名称,可确保服务在升级或恢复过程中仍然可用。这是因为网域控制器使用在升级或恢复过程中更改的随机名称。例如,如果域名为 ad.mycompany.com ,则主题名称必须为 CN=*.ad.mycompany.com 。 |
DnsName (DNS 名称或主题备用名称) |
它只能包含以下内容:"CN=*.ad.mycompany.com","CN=.ad.mycompany.com"
|
KeySpec |
该参数必须设置为 1 ,表示它可以用于数字签名和密钥交换。
|
KeyLength |
密钥大小下限取决于加密算法。 |
KeyUsage |
它必须包含“数字签名”和“密钥加密”。 |
TextExtension 或 EnhancedKeyUsageExtension |
它必须具有 OID=1.3.6.1.5.5.7.3.1 ,以便进行服务器身份验证。
|
NotBefore |
证书有效的时间。启用 LDAPS 时,证书必须有效。 |
NotAfter |
证书无效的时间。启用 LDAPS 时,证书必须有效。 |
KeyAlgorithm (签名算法) |
不支持 SHA-1、MD2、MD5 等弱签名算法。 |
颁发链:必须上传整个证书链,并且整个证书链必须有效。链必须为线性,不能有多个链。
证书格式:格式必须符合公钥加密标准 (PKCS) #12。您必须使用 PFX 文件。
来自 Public CA 或企业 CA 的请求
如需从 Public CA 或企业 CA 请求证书,请按照以下步骤操作。
在生成请求的同一虚拟机上接受证书。
以 PKCS #12 格式导出证书
如需以 PKCS #12 格式导出证书(作为 PFX 文件),请完成以下步骤:
在 Windows 中,在 Microsoft 管理控制台 (MMC) 中转到您的证书。
展开本地计算机证书,然后依次转到个人 > 证书。
右键点击您创建的证书以启用 LDAPS,然后依次选择所有任务 > 导出。
在显示的证书导出向导对话框中,点击下一步。
在导出私钥页面上,选择是以导出私钥。
在导出文件格式页面上,选中个人信息交换 - PKCS #12 (.PFX) 和尽可能将所有证书包含在认证路径中复选框。点击下一步。
在安全页面上,选中密码复选框,然后输入安全系数高的密码以保护证书。点击下一步。在代管式 Microsoft AD 网域上配置 LDAPS 时,必须使用此密码。
在要导出的文件页面上,输入要导出的 PFX 文件的目的地名称和路径。点击下一步。
点击完成。
如需将包含私钥的 PKCS #12 格式的自签名证书导出为 PFX 文件,请使用 Export-PfxCertificate
命令,并将自签名证书导出为 PEM 文件,请使用 Export-Certificate
命令。
将颁发者链分发到客户端计算机
为了使 LDAPS 正常运行,所有客户端计算机都必须信任 LDAPS 证书的颁发者。对于知名 Public CA,客户端计算机可能已信任颁发机构链。如果证书链不可信,请完成以下步骤以导出颁发者链:
在 Windows 中,在 Microsoft 管理控制台 (MMC) 中转到您的证书。
展开本地计算机证书,然后依次转到个人 > 证书。 双击 LDAPS 证书。
在证书窗口中,点击认证路径标签页。
在认证路径标签页上,选择路径中的根证书。
点击查看证书。
点击详细信息标签页,然后点击复制到文件...
在显示的证书导出向导对话框中,选择 Base-64 编码的 X.509,然后点击下一步。
选择证书链的文件名和位置,然后点击 Finish。
如需将证书复制到建立 LDAPS 连接的客户端计算机,请使用证书导入向导对话框将证书导入“本地机器”存储区。或者,您可以在 Windows 中使用组策略将颁发机构的证书链分发到客户端计算机。
如需将自签名证书导入本地机器的可信根存储区,请使用 Import-Certificate
命令。
在代管式 Microsoft AD 网域上启用 LDAPS
在代管式 Microsoft AD 网域上启用 LDAPS 之前,请执行以下操作:
确保您拥有以下 IAM 角色之一:
- Google Cloud Managed Identities 管理员 (
roles/managedidentities.admin
) - Google Cloud Managed Identities 网域管理员 (
roles/managedidentities.domainAdmin
)
如需详细了解代管式 Microsoft AD IAM 角色,请参阅访问权限控制。
- Google Cloud Managed Identities 管理员 (
如需在 Managed Microsoft AD 网域上启用 LDAPS,请完成以下步骤:
控制台
- 在 Google Cloud 控制台中,前往代管式 Microsoft AD 页面。
转到 Managed Microsoft AD - 在网域页面上,从实例列表中选择一个网域以启用 LDAPS。
- 在网域详情页面的 LDAPS 部分中,点击配置 LDAPS。
- 在 Configure LDAPS(配置 LDAPS)窗格中,输入用于以 PKCS #12 格式导出证书的 PFX 文件的位置和密码,然后点击 Configure LDAPS(配置 LDAPS)。
gcloud
运行以下 gcloud CLI 命令:
gcloud active-directory domains update-ldaps-settings DOMAIN_NAME \ --certificate-pfx-file=PFX_FILENAME \ --certificate-password=PASSWORD
替换以下内容:
- DOMAIN_NAME:代管式 Microsoft AD 网域的完整资源名称。完整资源名称格式:
projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
。 - PFX_FILENAME:PKCS #12 格式的 PFX 文件,用于指定用于配置 LDAPS 的证书链。
- PASSWORD:用于加密 PKCS #12 证书的密码。如果您未指定密码,系统会在运行该命令时提示您输入密码。
此操作最多可能需要 20 分钟才能完成。如需更新证书,请使用更新后的 PFX 文件重复上述步骤。
验证 LDAPS
您可以通过执行 LDAPS 绑定来验证是否已启用 LDAPS。此过程使用 LDP.exe
,这是您在将虚拟机加入网域时安装的 RSAT 工具之一。
在已加入网域的 Google Cloud Windows 虚拟机上,在 PowerShell 中完成以下步骤:
在 PowerShell 中,启动
LDP.exe
并前往连接 > 连接。在连接对话框中,完成以下步骤:
- 在服务器字段中,输入您的域名。
- 在端口字段中,输入
636
。 - 选中 SSL 复选框。
- 点击 OK(确定)。
如果正确启用了 LDAPS,则连接将会成功。
监控证书
您可以在 Cloud Monitoring 中查看证书链的存留时间 (TTL)。cert_ttl
指标显示证书中具有最早过期证书的有效天数。
控制台
如需使用 Metrics Explorer 查看受监控资源的指标,请执行以下操作:
-
在 Google Cloud 控制台的导航面板中,选择 Monitoring,然后选择 leaderboard Metrics Explorer:
- 在指标元素中,展开选择指标菜单,在过滤栏中输入
LDAPS Certificate TTL
,然后使用子菜单选择一个特定资源类型和指标:- 在 Active resources(活跃资源)菜单中,选择 Microsoft Active Directory 网域。
- 在活跃指标类别菜单中,选择 Microsoft_ad。
- 在活跃指标菜单中,选择 LDAPS Certificate TTL(LDAPS 证书 TTL)。
- 点击应用。
如需从显示结果中移除时序,请使用过滤条件元素。
如需组合时序,请使用聚合元素上的菜单。例如,如需根据虚拟机所在的可用区显示虚拟机的 CPU 利用率,请将第一个菜单设置为平均值,并将第二个菜单设置为可用区。
当聚合元素的第一个菜单设置为未聚合时,系统会显示所有时序。聚合元素的默认设置由您选择的指标类型决定。
- 对于配额和每天报告一个样本的其他指标,请执行以下操作:
- 在显示窗格中,将微件类型设置为堆叠条形图。
- 将时间段设置为至少一周。
您还可以在网域详细信息页面的 LDAPS 部分中点击 Monitoring,以导航到 Metrics Explorer。
您还可以使用查询编辑器查找这些指标。
在指标标签页上,选择查询编辑器。
在查询编辑器的文本字段中,输入以下 MQL 查询,然后选择运行查询。
fetch microsoft_ad_domain | metric 'managedidentities.googleapis.com/microsoft_ad/domain/ldaps/cert_ttl' | group_by 1m, [value_cert_ttl_mean: mean(value.cert_ttl)] | every 1m | group_by [resource.fqdn], [value_cert_ttl_mean_aggregate: aggregate(value_cert_ttl_mean)]
停用 LDAPS
要停用 LDAPS,请完成以下步骤:
控制台
- 在 Google Cloud 控制台中,前往代管式 Microsoft AD 页面。
转到代管式 Microsoft AD - 在网域页面上,从要为其停用证书的实例列表中选择网域。
- 在网域详情页面的 LDAPS 部分中,点击停用。
gcloud
运行以下 gcloud CLI 命令:
gcloud active-directory domains update-ldaps-settings DOMAIN_NAME \ --clear-ldaps-certificate
将 DOMAIN_NAME 替换为代管式 Microsoft AD 网域的完整资源名称。完整资源名称格式:projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
。
此操作最多可能需要 20 分钟才能完成。如需重新启用 LDAPS,您必须重新上传证书。