本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWSSupport-TroubleshootActiveDirectoryReplication
描述
该AWSSupport-TroubleshootActiveDirectoryReplication运行手册通过检查目标域控制器实例上的常用设置来帮助解决 Microsoft Active Directory (AD) 域控制器复制故障。本运行手册对提供的域控制器实例运行一系列 PowerShell 命令,以检查当前的复制状态并报告可能导致域复制问题的错误。如果复制关键服务(Netlogon、、和KDC)已停止 RPCSSW32Time,运行手册可以选择启动这些服务,并通过在目标实例w32tm /resync /force上运行来同步系统时间。
重要
AWS 托管 Microsoft AD 不在本运行手册的范围之内。
重要
当自动化在目标实例上运行命令时,会对目标实例文件系统进行更改。这些更改包括创建日志目录 ($env:ProgramData\TroubleshootActiveDirectoryReplication) 和报告文件。
如何工作?
运行手册执行以下检查和操作:
验证目标实例是否运行 Windows 并且由 Systems Manager 管理。
运行 PowerShell 脚本以检查 Active Directory 复制配置和状态。
检查安全组和网络 ACL 设置是否存在复制伙伴连接。
对时间同步和关键服务状态进行故障排除。
将日志文件上传到指定的 Amazon S3 存储桶进行分析。
文档类型
自动化
所有者
Amazon
平台
Windows
参数
所需的 IAM 权限
AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。
ec2:DescribeInstancessecretsmanager:GetSecretValuessm:DescribeInstanceInformationssm:SendCommandssm:GetCommandInvocations3:GetBucketAcls3:GetBucketPolicys3:GetBucketPolicyStatuss3:GetBucketPublicAccessBlocks3:PutObject
策略示例:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "secretsmanager:GetSecretValue" "ssm:DescribeInstanceInformation", "ssm:SendCommand", "ssm:GetCommandInvocation", "s3:GetBucketAcl", "s3:GetBucketPolicy", "s3:GetBucketPolicyStatus", "s3:GetBucketPublicAccessBlock", "s3:PutObject" ], "Resource": "*" } ] }
AWS Secrets Manager 设置
支票复制 PowerShell 脚本通过运行时调用来检索用户名和密码,从而连接到目标 Microsoft Active Directory 域控制器。 AWS Secrets Manager按照创建 AWS Secrets Manager 密钥中的步骤创建新 AWS Secrets Manager 密钥。确保用户名和密码使用一 key/value 对格式存储{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}。创建密钥后,请确保将 AWS Secrets Manager 机密 ARN 的secretsmanager:GetSecretValue权限授予目标域控制器 IAM 实例配置文件角色。
说明
按照这些步骤对自动化进行配置:
-
AWSSupport-TroubleshootActiveDirectoryReplication在 Systems Manager 的 “文档” 下导航至。 -
选择 Execute automation(执行自动化)。
-
对于输入参数,请输入以下内容:
-
AutomationAssumeRole (可选):
描述:(可选) AWS 身份和访问管理 (IAM) Access Management 角色的亚马逊资源名称 (ARN),允许系统管理员自动化代表您执行操作。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。
类型:
AWS::IAM::Role::Arn
-
InstanceId (必填):
描述:(必填)您要解决活动目录复制问题的 Amazon EC2 域控制器实例的 ID。请注意,提供的实例必须是域控制器。
类型:
AWS::EC2::Instance::Id
-
SecretsManagerArn (必填):
描述:(必填)您的 AWS Secrets Manager 密钥的 ARN,其中包含具有企业管理员或访问您的 Active Directory 域和林配置的同等权限的 Active Directory 用户名和密码。确保用户名和密码使用一 key/value 对格式存储
{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}。确保将机密 ARN 的secretsmanager:GetSecretValue权限附加到您的目标域控制器 IAM 实例配置文件角色。类型:
String-
允许的模式:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):secretsmanager:[a-z0-9-]{2,20}:[0-9]{12}:secret:[a-zA-Z0-9]{1}[a-zA-Z0-9\\/_+=.@-]{1,256}$
-
TimeSync (可选):
描述:(可选)选择
Check或Sync。如果选择Check,运行手册将打印出当前的系统时间同步状态。Sync如果选中,运行手册将尝试通过在目标实例w32tm /resync /force上运行来强制时间重新同步。类型:
String-
允许的值:
[Check, Sync] 默认值:
Check
-
ServiceAction (可选):
描述:(可选)选择
Check或Fix。如果选择Check,运行手册会打印出Netlogon、Windows Time service (W32Time)Remote Procedure Call (RPC) Service、和Key Distribution Center (KDC)服务的当前状态。如果Fix选中,则运行手册将尝试启动这些服务(如果有任何服务已停止)。类型:
String-
允许的值:
[Check, Fix] 默认值:
Check
-
LogDestination (必填):
描述:(必填)您 AWS 账户中用于上传命令输出的 Amazon S3 存储桶。
类型:
String
-
-
选择执行。
-
自动化启动。
-
文档将执行以下步骤:
-
assertIfOperatingSystemIsWindows:
检查所提供的目标 Amazon EC2 实例的操作系统是否为 Windows。
-
assertifInstanceIsSsmManaged:
确保 Amazon EC2 实例由 Systems Manager 管理,否则自动化将结束。
-
检查复制:
在指定的域控制器实例上运行 PowerShell 脚本以获取 Active Directory 域复制配置和状态。
-
checkInstanceSgAndNacl:
检查与目标域控制器实例关联的安全组和网络 ACL 是否允许发送到复制伙伴的流量。
-
疑难解答复制:
运行 PowerShell 脚本以排除时间同步和关键服务状态故障。
-
verifys3 BucketPublicStatus:
检查中指定的 Amazon S3 存储桶是否
LogDestination允许匿名或公开读取或写入访问权限。 -
runUploadScript:运行 PowerShell 脚本将日志存档上传到
LogDestination参数中指定的 AAmazon S3 存储桶,并从操作系统中删除存档的日志文件。日志文件可用于故障排除,也可以在排除复制问题时与 S AWS upport 共享。
-
-
完成后,请查看 “输出” 部分,了解执行的详细结果。
参考
Systems Manager Automation