适用于 Cloud SQL 的客户管理的 Active Directory 诊断工具

客户管理的 Active Directory (CMAD) 诊断工具是一个实用程序 PowerShell 脚本,可 帮助您排查网域的 Active Directory 设置问题, 这些问题可能在与 Cloud SQL 集成之前或集成期间出现 Google Cloud。

该工具会对相关问题(例如关闭的端口、域控制器 (DC) 可达性、账号状态和组织部门 (OU) 存在性)执行各种检查。它在一个 Windows 虚拟机上运行,并且该虚拟机应是 Active Directory 网域的网域控制器之一或已加入网域的机器。

本页面介绍如何使用适用于 Cloud SQL 的 CMAD 诊断工具,并说明了该工具执行的检查。

前提条件

在继续使用 CMAD 诊断工具之前,请确保您已设置以下组件:

  • 一个 Active Directory 网域。
  • 一个 Active Directory 管理员账号,该账号具有将计算机加入目标 OU 的权限。
  • Active Directory 中的一个组织单位 (OU),Cloud SQL 计算机账号将在此组织单位中创建。
  • 如果在已加入网域的虚拟机(而不是网域控制器)上运行脚本,则必须安装适用于 PowerShell 的 Active Directory 模块 (RSAT-AD-PowerShell)。

如何使用 CMAD 诊断工具

如需使用 CMAD 诊断工具,请执行以下步骤:

  1. 登录任一网域控制器或登录一个加入了 Active Directory 网域的虚拟机。
  2. 在虚拟机上下载 diagnose_cmad.ps1 脚本
  3. 以管理员身份启动 PowerShell。
  4. 使用以下命令在 PowerShell 窗口中运行 diagnose_cmad.ps1 脚本:

    C:\SCRIPT_PATH\diagnose_cmad.ps1

    SCRIPT_PATH 替换为您下载脚本的目录的路径。

  5. 出现提示时,请输入以下信息:

    • 本地网域名,例如 my-domain.com
    • AD 管理员账号,例如 myadmin
    • 目标 OU,例如 OU=cloud,DC=my-domain,DC=com

之后,该工具会执行多项检查,具体请参阅使用 CMAD 诊断工具执行的检查部分。

使用 CMAD 诊断工具执行的检查

检查说明 备注和建议
可用的网域控制器 对本地网域上每个网域控制器的 IP 地址发出 ping 请求,以确保它们可以访问。 其余检查会继续对可访问的 IP 地址进行。如果有某个本地网域控制器未通过此检查,则需确保其余本地网域控制器的网络连接。如需了解详情,请参阅创建网络基础架构
端口 验证 AD 的所有必需 TCP 和 UDP 端口在所有本地网域控制器上都处于打开状态。 此检查会针对 RPC 端口范围 (49152-65535) 返回警告状态(如果打开端口列表不一致)。建议您确认设置了允许此范围的防火墙规则集。如需了解详情,请参阅 客户管理的 Active Directory 防火墙规则
DC 复制 查找本地网域控制器之间是否发生任何 AD 复制失败问题。 当脚本是在加入了本地网域的虚拟机上运行,如果 Powershell 未以 Active Directory 域用户身份运行,则该检查会返回失败状态。如果此检查未通过,请按照 测试安装中指定的步骤操作。
Kerberos 服务 (SRV) 记录 查询本地 DNS 以获取 _kerberos._tcp_kerberos._udp SRV 记录,并验证目标主机是否与提供的网域名正确匹配。

如需了解详情,请参阅 SRV 记录的 Microsoft 文档
如果此检查失败,请验证 Active Directory 网域的 DNS SRV 记录是否存在且配置正确。
AD 管理员账号状态 验证为 CMAD 集成指定的管理员账号是否存在、是否已启用、是否未被锁定以及是否未过期。 如果此检查失败,请解锁用户账号,在 Active Directory 用户和计算机 (ADUC) 中启用该账号,或者在密码过期时更新 Secret Manager 中的凭据。
组织单位 (OU) 验证目标组织单位 (OU) 的专有名称 (DN) 是否存在于 Active Directory 中。 如果此检查失败,请验证目标 OU 是否存在于 Active Directory 中,以及提供的 DN(例如 OU=cloud,DC=my-domain,DC=com)的格式是否正确。

后续步骤

  • 如要提供反馈意见,您可以通过 GitHub 问题来提交反馈。