本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWSSupport-TroubleshootRDP
描述
AWSSupport-TroubleshootRDP
运行手册允许用户检查或修改目标实例上可能影响远程桌面协议 (RDP) 连接的常规设置,如 RDP 端口、网络层身份验证 (NLA) 和 Windows 防火墙配置文件。(可选)如果用户明确允许进行离线修复,则可以通过停止和启动实例来离线应用更改。默认情况下,此运行手册读取和输出这些设置的值。
重要
在使用此运行手册之前,应仔细检查对 RDP 设置、RDP 服务和 Windows 防火墙配置文件的更改。
文档类型
自动化
所有者
Amazon
平台
Windows
参数
-
操作
类型:字符串
有效值:CheckAll | FixAll | Custom
默认值:Custom
描述:(可选)[自定义] 使用 Firewall、RDPServiceStartupType、RDPServiceAction、RDPPortAction、NLASettingAction 和 RemoteConnections 中的值来管理设置。[CheckAll] 在不更改设置的值的情况下读取这些值。[FixAll] 恢复 RDP 默认设置并禁用 Windows 防火墙。
-
AllowOffline
类型:字符串
有效值:true | false
原定设置值:false
说明:(可选)仅修复 - 如果当在线故障排除失败或提供的实例不是托管实例时允许进行离线 RDP 修复,请将其设置为 true。注意:对于离线修复,SSM Automation 会停止实例,并在尝试任何操作前创建一个 AMI。
-
AutomationAssumeRole
类型:字符串
描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定任何角色,则 Systems Manager Automation 使用启动此运行手册的用户的权限。
-
防火墙
类型:字符串
有效值:Check | 禁用
默认值:Check
说明:(可选)检查或禁用 Windows 防火墙(所有配置文件)。
-
InstanceId
类型:字符串
说明:(必需)要对其 RDP 设置进行故障排除的实例的 ID。
-
NLASettingAction
类型:字符串
有效值:Check | 禁用
默认值:Check
说明:(可选)检查或禁用网络层身份验证 (NLA)。
-
RDPPortAction
类型:字符串
有效值:Check | 修改
默认值:Check
说明:(可选)检查用于 RDP 连接的当前端口,或将 RDP 端口修改回 3389 并重启服务。
-
RDPServiceAction
类型:字符串
有效值:Check | 启动 | 重启 | 强制重启
默认值:Check
说明:(可选)检查、启动、重启或强制重启 RDP 服务 (TermService)。
-
RDPServiceStartupType
类型:字符串
有效值:Check | 自动
默认值:Check
说明:(可选)检查或设置 RDP 服务在 Windows 启动时自动启动。
-
RemoteConnections
类型:字符串
有效值:Check | 启用
默认值:Check
说明:(可选)要对 fDenyTSConnections 设置执行的操作:Check、Enable。
-
S3BucketName
类型:字符串
说明:(可选)仅离线 - 您账户中用于上传故障排除日志的 S3 存储桶的名称。请确保存储桶策略不会向不需要访问收集的日志的各方授予不必要的读/写权限。
-
SubnetId
类型:字符串
默认值:SelectedInstanceSubnet
说明:(可选)仅离线 - 用于执行离线故障排除的 EC2Rescue 实例的子网 ID。如果未指定子网 ID,AWS Systems Manager Automation 将创建一个新 VPC。重要说明:子网必须与 InstanceId 位于同一可用区中,并且必须允许访问 SSM 终端节点。
所需的 IAM 权限
AutomationAssumeRole
参数需要执行以下操作才能成功使用运行手册。
建议接收命令的 EC2 实例具有一个附加了 AmazonSSMManagedInstanceCore Amazon 托管策略的 IAM 角色。对于在线修复,用户必须至少具有 ssm:DescribeInstanceInformation、ssm:StartAutomationExecution 和 ssm:SendCommand 才能运行此 Automation 并将命令发送到实例,并且需要具有 ssm:GetAutomationExecution 才能读取 Automation 输出。对于离线修复,用户必须至少具有 ssm:DescribeInstanceInformation、ssm:StartAutomationExecution、ec2:DescribeInstances 以及 ssm:GetAutomationExecution 才能读取自动化输出。AWSSupport-TroubleshootRDP
调用 AWSSupport-ExecuteEC2Rescue
以执行离线修复 — 请查看 AWSSupport-ExecuteEC2Rescue
的权限以确保您可以成功运行自动化。
文档步骤
-
aws:assertAwsResourceProperty
- 检查实例是否为 Windows Server 实例 -
aws:assertAwsResourceProperty
- 检查实例是否为托管实例 -
(在线故障排除)如果实例为托管实例,则:
-
aws:assertAwsResourceProperty
- 检查提供的操作值 -
(在线检查)如果 Action = CheckAll,则:
aws:runPowerShellScript
- 运行 PowerShell 脚本来获取 Windows 防火墙配置文件状态。aws:executeAutomation
- 调用AWSSupport-ManageWindowsService
以获取 RDP 服务状态。aws:executeAutomation
- 调用AWSSupport-ManageRDPSettings
以获取 RDP 设置。 -
(在线修复)如果 Action = FixAll,则:
aws:runPowerShellScript
- 运行 PowerShell 脚本来禁用所有 Windows 防火墙配置文件。aws:executeAutomation
- 调用AWSSupport-ManageWindowsService
以启动 RDP 服务。aws:executeAutomation
- 调用AWSSupport-ManageRDPSettings
以启用远程连接并禁用 NLA。 -
(在线管理)如果 Action = Custom,则:
aws:runPowerShellScript
- 运行 PowerShell 脚本来管理 Windows 防火墙配置文件。aws:executeAutomation
- 调用AWSSupport-ManageWindowsService
以管理 RDP 服务。aws:executeAutomation
- 调用AWSSupport-ManageRDPSettings
以管理 RDP 设置。
-
-
(离线修复)如果实例并非托管实例,则:
-
aws:assertAwsResourceProperty
- 断言AllowOffline = true -
aws:assertAwsResourceProperty
- 断言 Action = FixAll -
aws:assertAwsResourceProperty
- 断言 SubnetId 的值(使用提供的实例的子网)如果 SubnetId 为 SELECTED_INSTANCE_SUBNET
aws:executeAwsApi
- 检索当前实例的子网。aws:executeAutomation
- 使用提供的实例的子网运行AWSSupport-ExecuteEC2Rescue
。 -
(使用提供的自定义子网)如果 SubnetId 不为 SELECTED_INSTANCE_SUBNET
aws:executeAutomation
- 使用提供的 SubnetId 值运行AWSSupport-ExecuteEC2Rescue
。
-
输出
manageFirewallProfiles.Output
manageRDPServiceSettings.Output
manageRDPSettings.Output
checkFirewallProfiles.Output
checkRDPServiceSettings.Output
checkRDPSettings.Output
disableFirewallProfiles.Output
restoreDefaultRDPServiceSettings.Output
restoreDefaultRDPSettings.Output
troubleshootRDPOffline.Output
troubleshootRDPOfflineWithSubnetId.Output