

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS Directory Service
<a name="automation-ref-ads"></a>

 AWS Systems Manager 自動化為 提供預先定義的 Runbook AWS Directory Service。如需有關執行手冊的詳細資訊，請參閱 [Working with runbooks](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html)。如需如何檢視 Runbook 內容的詳細資訊，請參閱 [檢視 Runbook 內容](automation-runbook-reference.md#view-automation-json)。

**Topics**
+ [`AWS-CreateDSManagementInstance`](automation-awssupport-create-ds-management-instance.md)
+ [`AWSSupport-TroubleshootADConnectorConnectivity`](automation-awssupport-troubleshootadconnectorconnectivity.md)
+ [`AWSSupport-TroubleshootDirectoryTrust`](automation-awssupport-troubleshootdirectorytrust.md)

# `AWS-CreateDSManagementInstance`
<a name="automation-awssupport-create-ds-management-instance"></a>

 **Description** 

 `AWS-CreateDSManagementInstance` Runbook 會建立 Amazon Elastic Compute Cloud (Amazon EC2) Windows 執行個體，供您用來管理 AWS Directory Service 目錄。管理執行個體無法用於管理 AD Connector 目錄。

 [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-CreateDSManagementInstance) 

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

Windows

**參數**
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 之使用者的許可。
+ AmiID

  類型：字串

   預設：`{{ ssm:/aws/service/ami-windows-latest/Windows_Server-2019-English-Full-Base }}`

  描述：（選用） Amazon Machine Image(AMI) 用來啟動執行個體的 ID。根據預設，執行個體將使用最新的 Microsoft Windows Server 2019 Base AMI 啟動。
+ DirectoryId

  類型：字串

  描述：（必要） 目錄的 Directory Service 目錄 ID。
+ IamInstanceProfileName

  類型：字串

  描述：（選用） IAM 執行個體描述檔名稱。根據預設，如果名稱為 AmazonSSMDirectoryServiceInstanceProfileRole 的執行個體描述檔不存在，則會建立名稱為 AmazonSSMDirectoryServiceInstanceProfileRole 的執行個體描述檔。

  預設：AmazonSSMDirectoryServiceInstanceProfileRole
+ InstanceType

  類型：字串

  預設：t3.medium

  允許的值：
  + t2.nano
  + t2.micro
  + t2.small
  + t2.medium
  + t2.large
  + t2.xlarge
  + t2.2xlarge
  + t3.nano
  + t3.micro
  + t3.small
  + t3.medium
  + t3.large
  + t3.xlarge
  + t3.2xlarge

  描述：（選用） 要啟動的執行個體類型。預設為 t3.medium。
+ KeyPairName

  類型：字串

  描述：（選用） 啟動執行個體時要使用的金鑰對。Windows 不支援 ED25519 金鑰對。根據預設，執行個體在沒有金鑰對的情況下啟動 (NoKeyPair)。

  預設：NoKeyPair
+ RemoteAccessCidr

  類型：字串

  描述：（選用） 建立 RDP （連接埠範圍 3389) 連接埠開放給 CIDR 指定的 IPs 的安全群組 （預設為 0.0.0.0/0)。如果安全群組已存在，則不會修改，規則也不會變更。

  預設：0.0.0.0/0
+ SecurityGroupName

  類型：字串

  描述：（選用） 安全群組名稱。根據預設，如果名稱為 AmazonSSMDirectoryServiceSecurityGroup 的安全群組不存在，則會建立名稱為 AmazonSSMDirectoryServiceSecurityGroup 的安全群組。

  預設：AmazonSSMDirectoryServiceSecurityGroup
+ Tags (標籤)

  類型：MapList

  描述：（選用） 您要套用至自動化所建立資源的鍵/值對。

  預設：` [ {"Key":"Description","Value":"Created by AWS Systems Manager Automation"}, {"Key":"Created By","Value":"AWS Systems Manager Automation"} ]`

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+  `ds:DescribeDirectories` 
+  `ec2:AuthorizeSecurityGroupIngress` 
+  `ec2:CreateSecurityGroup` 
+  `ec2:CreateTags` 
+  `ec2:DeleteSecurityGroup` 
+  `ec2:DescribeInstances` 
+  `ec2:DescribeInstanceStatus` 
+  `ec2:DescribeKeyPairs` 
+  `ec2:DescribeSecurityGroups` 
+  `ec2:DescribeVpcs` 
+  `ec2:RunInstances` 
+  `ec2:TerminateInstances` 
+  `iam:AddRoleToInstanceProfile` 
+  `iam:AttachRolePolicy` 
+  `iam:CreateInstanceProfile` 
+  `iam:CreateRole` 
+  `iam:DeleteInstanceProfile` 
+  `iam:DeleteRole` 
+  `iam:DetachRolePolicy` 
+  `iam:GetInstanceProfile` 
+  `iam:GetRole` 
+  `iam:ListAttachedRolePolicies` 
+  `iam:ListInstanceProfiles` 
+  `iam:ListInstanceProfilesForRole` 
+  `iam:PassRole` 
+  `iam:RemoveRoleFromInstanceProfile` 
+  `iam:TagInstanceProfile` 
+  `iam:TagRole` 
+  `ssm:CreateDocument` 
+  `ssm:DeleteDocument` 
+  `ssm:DescribeInstanceInformation` 
+  `ssm:GetAutomationExecution` 
+  `ssm:GetParameters` 
+  `ssm:ListCommandInvocations` 
+  `ssm:ListCommands` 
+  `ssm:ListDocuments` 
+  `ssm:SendCommand` 
+  `ssm:StartAutomationExecution` 

 **文件步驟** 
+  `aws:executeAwsApi` - 收集您在 `DirectoryId` 參數中指定之目錄的詳細資訊。
+  `aws:executeAwsApi` - 取得啟動目錄之虛擬私有雲端 (VPC) 的 CIDR 區塊。
+  `aws:executeAwsApi` - 使用您在 `SecurityGroupName` 參數中指定的值建立安全群組。
+  `aws:executeAwsApi` - 為新建立的安全群組建立傳入規則，允許來自您在 `RemoteAccessCidr` 參數中指定 CIDR 的 RDP 流量。
+  `aws:executeAwsApi` - 使用您在 `IamInstanceProfileName` 參數中指定的值建立 IAM 角色和執行個體描述檔。
+  `aws:executeAwsApi` - 根據您在 Runbook 參數中指定的值啟動 Amazon EC2 執行個體。
+  `aws:executeAwsApi` - 建立 AWS Systems Manager 文件，將新啟動的執行個體加入您的目錄。
+  `aws:runCommand` - 將新執行個體加入您的目錄。
+  `aws:runCommand` - 在新執行個體上安裝遠端伺服器管理工具。

# `AWSSupport-TroubleshootADConnectorConnectivity`
<a name="automation-awssupport-troubleshootadconnectorconnectivity"></a>

 **Description** 

 `AWSSupport-TroubleshootADConnectorConnectivity` Runbook 會驗證 AD Connector 的下列先決條件：
+ 檢查與 AD Connector 相關聯的安全群組和網路存取控制清單 (ACL) 規則是否允許所需的流量。
+ 檢查 AWS Security Token Service AWS Systems Manager、 和 Amazon CloudWatch 介面 VPC 端點是否存在與 AD Connector 相同的虛擬私有雲端 (VPC) 中。

當先決條件檢查成功完成時，執行手冊會在與 AD Connector 相同的子網路中啟動兩個 Amazon Elastic Compute Cloud (Amazon EC2) Linux t2.micro 執行個體。然後，使用 `netcat`和 `nslookup`公用程式執行網路連線測試。

 [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootADConnectorConnectivity) 

**重要**  
 使用此 Runbook 可能會針對自動化期間建立 AWS 帳戶 的 Amazon EC2 執行個體、Amazon Elastic Block Store 磁碟區和 Amazon Machine Image(AMI)，向 收取額外費用。如需詳細資訊，請參閱 [Amazon Elastic Compute Cloud 定價](https://aws.amazon.com/ec2/pricing/)和 [Amazon Elastic Block Store 定價](https://aws.amazon.com/ebs/pricing/)。  
 如果`aws:deletestack`步驟失敗，請前往 AWS CloudFormation 主控台手動刪除堆疊。此 Runbook 建立的堆疊名稱開頭為 `AWSSupport-TroubleshootADConnectorConnectivity`。如需有關刪除 CloudFormation 堆疊的資訊，請參閱*AWS CloudFormation 《 使用者指南*》中的[刪除堆疊](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html)。

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

Linux、macOS、 Windows

**參數**
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 的使用者許可。
+ DirectoryId

  類型：字串

  描述：（必要） 您要疑難排解連線的 AD Connector 目錄 ID。
+ Ec2InstanceProfile

  類型：字串

  字元上限：128 

  描述：（必要） 您要指派給啟動執行連線測試之執行個體的執行個體設定檔名稱。您指定的執行個體描述檔必須連接`AmazonSSMManagedInstanceCore`政策或同等許可。

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+  `ec2:DescribeInstances` 
+  `ec2:DescribeImages` 
+  `ec2:DescribeSubnets` 
+  `ec2:DescribeSecurityGroups` 
+  `ec2:DescribeNetworkAcls` 
+  `ec2:DescribeVpcEndpoints` 
+  `ec2:CreateTags` 
+  `ec2:RunInstances` 
+  `ec2:StopInstances` 
+  `ec2:TerminateInstances` 
+  `cloudformation:CreateStack` 
+  `cloudformation:DescribeStacks` 
+  `cloudformation:ListStackResources` 
+  `cloudformation:DeleteStack` 
+  `ds:DescribeDirectories` 
+  `ssm:SendCommand` 
+  `ssm:ListCommands` 
+  `ssm:ListCommandInvocations` 
+  `ssm:GetParameters` 
+  `ssm:DescribeInstanceInformation` 
+  `iam:PassRole` 

 **文件步驟** 
+  `aws:assertAwsResourceProperty` - 確認 `DirectoryId` 參數中指定的目錄是 AD Connector。
+  `aws:executeAwsApi` - 收集 AD Connector 的相關資訊。
+  `aws:executeAwsApi` - 收集與 AD Connector 相關聯的安全群組資訊。
+  `aws:executeAwsApi` - 收集與 AD Connector 子網路相關聯的網路 ACL 規則的相關資訊。
+  `aws:executeScript` - 評估 AD Connector 安全群組規則，以確認允許必要的傳出流量。
+  `aws:executeScript` - 評估 AD Connector 網路 ACL 規則，以確認允許必要的傳出和傳入網路流量。
+  `aws:executeScript` - 檢查 AWS Systems Manager AWS Security Token Service 和 Amazon CloudWatch 介面端點是否存在於與 AD Connector 相同的 VPC 中。
+  `aws:executeScript` - 編譯先前步驟中執行之檢查的輸出。
+  `aws:branch` - 會根據先前步驟的輸出來配置自動化。如果安全群組和網路 ACLs 缺少必要的傳出和傳入規則，自動化會停止在此。
+  `aws:createStack` - 建立 CloudFormation 堆疊以啟動 Amazon EC2 執行個體，以執行連線測試。
+  `aws:executeAwsApi` - 收集新啟動的 Amazon EC2 執行個體 IDs。
+  `aws:waitForAwsResourceProperty` - 等待第一個新啟動的 Amazon EC2 執行個體報告由 管理 AWS Systems Manager。
+  `aws:waitForAwsResourceProperty` - 等待第二個新啟動的 Amazon EC2 執行個體報告由 管理 AWS Systems Manager。
+  `aws:runCommand` - 從第一個 Amazon EC2 執行個體對現場部署 DNS 伺服器 IP 地址執行網路連線測試。
+  `aws:runCommand` - 從第二個 Amazon EC2 執行個體對內部部署 DNS 伺服器 IP 地址執行網路連線測試。
+  `aws:changeInstanceState` - 停止用於連線測試的 Amazon EC2 執行個體。
+  `aws:deleteStack` - 刪除 CloudFormation 堆疊。
+  `aws:executeScript` - 輸出在自動化無法刪除 CloudFormation 堆疊時如何手動刪除堆疊的指示。

# `AWSSupport-TroubleshootDirectoryTrust`
<a name="automation-awssupport-troubleshootdirectorytrust"></a>

 **Description** 

 `AWSSupport-TroubleshootDirectoryTrust` Runbook 會診斷 AWS Managed Microsoft AD 和 Microsoft Active Directory 之間的信任建立問題。自動化會確認目錄類型支援信任，然後會檢查關聯的安全群組規則、網路存取控制清單 (網路 ACL)，以及路由表來檢查是否有潛在的連線能力問題。

 [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootDirectoryTrust) 

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

Linux、macOS、 Windows

**參數**
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 的使用者許可。
+ DirectoryId

  類型：字串

  允許模式：^d-【a-z0-9】\$110\$1\$1

  描述：（必要） AWS Managed Microsoft AD 要故障診斷的 ID。
+ RemoteDomainCidrs

  類型：StringList

  允許模式：^((【0-9】\$1【1-9】【0-9】\$11【0-9】\$12\$1\$12【0-4】【0-9】\$125【0-5】)\$1.)\$13\$1(【0-9】\$1【1-9】【0-9】\$11【0-9】\$12\$1\$12【0-4】【0-9】\$125【0-5】)(\$1/(3【0-2】\$1【1-2】【0-9】\$1【1-9】)\$1

  描述：(必要) 您正在嘗試與其建立信任關係的遠端網域 CIDR。您可以使用逗號分隔值新增多個 CIDR。例如：172.31.48.0/20, 192.168.1.10/32。
+ RemoteDomainName

  類型：字串

  描述：(必要) 您正在與其建立信任關係的遠端網域完整網域名稱。
+ RequiredTrafficACL

  類型：字串

  描述：（必要） 的預設連接埠需求 AWS Managed Microsoft AD。在大多數情況下，您不應修改預設值。

  預設：\$1"inbound":\$1"tcp":[[53,53],[88,88],[135,135],[389,389],[445,445],[464,464],[636,636],[1024,65535]],"udp":[[53,53],[88,88],[123.123],[138,138],[389,389],[445,445],[464,464]],"icmp":[[-1,-1]]\$1,"outbound":\$1"-1":[[0,65535]]\$1\$1
+ RequiredTrafficSG

  類型：字串

  描述：（必要） 的預設連接埠需求 AWS Managed Microsoft AD。在大多數情況下，您不應修改預設值。

  預設：\$1"inbound":\$1"tcp":[[53,53],[88,88],[135,135],[389,389],[445,445],[464,464],[636,636],[1024,65535]],"udp":[[53,53],[88,88],[123.123],[138,138],[389,389],[445,445],[464,464]],"icmp":[[-1,-1]]\$1,"outbound":\$1"-1":[[0,65535]]\$1\$1
+ TrustId

  類型：字串

  描述：(選用) 要針對其進行故障診斷的信任關係 ID。

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+  `ds:DescribeConditionalForwarders` 
+  `ds:DescribeDirectories` 
+  `ds:DescribeTrusts` 
+  `ds:ListIpRoutes` 
+  `ec2:DescribeNetworkAcls` 
+  `ec2:DescribeSecurityGroups` 
+  `ec2:DescribeSubnets` 

 **文件步驟** 
+  `aws:assertAwsResourceProperty` - 確認目錄類型為 AWS Managed Microsoft AD。
+  `aws:executeAwsApi` - 取得 的相關資訊 AWS Managed Microsoft AD。
+  `aws:branch` - 如果為`TrustId`輸入參數提供值，則分支自動化。
+  `aws:executeAwsApi` - 取得信任關係的相關資訊。
+  `aws:executeAwsApi` - 取得 的條件式轉送器 DNS IP `RemoteDomainName` 地址。
+  `aws:executeAwsApi` - 取得已新增至 的 IP 路由相關資訊 AWS Managed Microsoft AD。
+  `aws:executeAwsApi` - 取得 AWS Managed Microsoft AD 子網路CIDRs。
+  `aws:executeAwsApi` - 取得與 相關聯之安全群組的相關資訊 AWS Managed Microsoft AD。
+  `aws:executeAwsApi` - 取得與 相關聯之網路 ACLs 的相關資訊 AWS Managed Microsoft AD。
+  `aws:executeScript` - 確認 `RemoteDomainCidrs`是有效的值。確認 AWS Managed Microsoft AD 具有 的條件式轉送器，而且 AWS Managed Microsoft AD 如果 `RemoteDomainCidrs`是非 RFC `RemoteDomainCidrs` 1918 IP 地址，則必要的 IP 路由已新增至 。
+  `aws:executeScript` - 評估安全群組規則。
+  `aws:executeScript` - 評估網路 ACLs。

 **輸出** 

evalDirectorySecurityGroup.output - 評估與 相關聯的安全群組規則是否 AWS Managed Microsoft AD 允許建立信任的必要流量。

evalAclEntries.output - 評估與 相關聯的網路 ACLs是否 AWS Managed Microsoft AD 允許建立信任的必要流量。

 evaluateRemoteDomainCidr.output ‒ 評估 `RemoteDomainCidrs` 是否為有效值的結果。確認 AWS Managed Microsoft AD 具有 的條件式轉送器，而且 AWS Managed Microsoft AD 如果 `RemoteDomainCidrs`是非 RFC `RemoteDomainCidrs` 1918 IP 地址，則必要的 IP 路由已新增至 。