使用 RDP 登录 Windows 实例 - AWS OpsWorks

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 RDP 登录 Windows 实例

重要

该 AWS OpsWorks Stacks 服务于 2024 年 5 月 26 日终止,新客户和现有客户均已禁用。我们强烈建议客户尽快将其工作负载迁移到其他解决方案。如果您对迁移有疑问,请通过 re AWS : Post 或通过 Pre mium Su AWS pp ort 与 AWS Support 团队联系。

您可以使用 Windows 远程桌面协议 (RDP) 登录到联机 Windows 实例,如下所示:

  • 该实例必须具有安全组以及允许 RDP 访问的入站规则。

    有关使用安全组的更多信息,请参阅使用安全组

  • 普通用户 — AWS OpsWorks Stacks 为授权的普通用户提供 RDP 密码,该密码在有限的时间段内有效,范围从 30 分钟到 12 小时不等。

    除了获得授权外,用户还必须至少具有 Sho w 权限级别,或者其附加 AWS Identity and Access Management (IAM) 策略必须允许该opsworks:GrantAccess操作。

  • 管理员:您可以使用管理员密码登录,登录时长不受限制。

    如后文所述,如果您指定了实例的 Amazon Elastic Compute Cloud (Amazon EC2) 密钥对,就可以用它来检索管理员密码。

注意

本主题介绍如何从 Windows 工作站使用 Windows 远程桌面连接客户端登录。您还可以为 Linux 或 OS X 使用可用的 RDP 客户端之一,但过程可能会有些不同。有关与 Microsoft Windows Server 2012 R2 兼容的 RDP 客户端的更多信息,请参阅 Microsoft 远程桌面客户端

提供允许 RDP 访问的安全组

实例的安全组入站规则必须允许 RDP 连接,然后您才能使用 RDP 登录 Windows 实例。在区域中创建第一个堆栈时, AWS OpsWorks Stacks 创建一组安全组。它们包括一个名为类似的名字AWS-OpsWorks-RDP-Server, AWS OpsWorks 堆栈将其连接到所有 Windows 实例以允许 RDP 访问。但是,默认情况下,此安全组没有任何规则,因此您必须添加入站规则以允许 RDP 访问您的实例。

允许 RDP 访问
  1. 打开 Amazon S3 控制台,将其设置为堆栈的区域,然后从导航窗格中选择安全组

  2. 选择 AWS-OpsWorks RDP-Server,选择 “入站” 选项卡,然后选择 “编辑”。

  3. 选择 Add Rule,然后指定以下设置:

    • 类型RDP

    • -允许的源 IP 地址。

      通常您会允许来自您的 IP 地址或指定 IP 地址范围(一般是公司的 IP 地址范围)的入站 RDP 请求。

作为普通用户登录

授权用户可以使用 AWS OpsWorks Stacks 提供的临时密码登录到实例。

为用户授予 RDP 访问权;
  1. 在 AWS OpsWorks 堆栈导航窗格中,单击 “权限”。

  2. 选中所需用户的 SSH/RDP 复选框以授予必要的权限。如果您希望用户具有管理员权限,则还应选择 sudo/admin

    用户的 SSH 和 sudo 权限

授权用户可以登录到堆栈的任意联机实例,如下所示。

作为普通 IAM 用户登录
  1. 作为 IAM 用户登录。

  2. Instances 页面上,选择相应实例的 Actions 列中的 rdp

  3. 指定会话长度,范围可从 30 分钟到 12 小时,然后选择 Generate Password。密码仅在指定的会话持续时间内有效。

  4. 记录 public DNS nameusernamepassword 值,然后选择 Acknowledge and close

  5. 打开 Windows 远程桌面连接客户端,选择 Show Options,然后使用在步骤 4 中记录的信息提供以下信息:

    • 计算机:实例的公有 DNS 名称。

      如果愿意,您也可以使用公有 IP 地址。选择 Instances,并复制实例的 Public IP 列中的地址。

    • 用户名:用户名。

  6. 在客户端提示输入凭证时,输入您在步骤 4 中保存的密码。

注意

AWS OpsWorks Stacks 仅为在线实例生成用户密码。例如,如果您启动一个实例,您的自定义 Setup 配方之一失败,则实例最终将处于 setup_failed 状态。尽管就 AWS OpsWorks Stacks 而言,该实例未处于联机状态,但 EC2 实例仍在运行,登录以解决问题通常很有用。 AWS OpsWorks 在这种情况下,堆栈不会为您生成密码,但是如果您已为实例分配了 SSH 密钥对,则可以使用 EC2 控制台或 CLI 来检索实例的管理员密码并以管理员身份登录。有关更多信息,请参阅以下 章节。

作为管理员登录

您可以使用相应的密码,作为管理员登录实例。如果您将 EC2 密钥对分配到某个实例,则 Amazon EC2 在实例启动时使用它来自动创建并加密管理员密码。然后,您可以通过 EC2 控制台、API 或 CLI 使用密钥对的私有密钥检索和解密密码。

注意

您不能使用个人 SSH 密钥对来检索管理员密码;必须使用 EC2 密钥对。

以下介绍了如何使用 EC2 控制台来检索管理员密码并登录实例。如果您偏好命令行工具,则还可以使用 AWS CLI get-password-data 命令来检索密码。

作为管理员登录
  1. 确保您为实例指定了 EC2 密钥对。创建堆栈时,您可以为堆栈的所有实例指定默认密钥对,或者可以在创建实例时为特定实例指定密钥对

  2. 打开 EC2 控制台,将其设置为堆栈的区域,然后从导航窗格中选择 Instances (实例)

  3. 依次选择实例、ConnectGet Password

  4. 提供您的工作站上 EC2 密钥对中私有密钥的路径,然后选择 Decrypt Password。复制解密的密码供以后使用。

  5. 打开 Windows 远程桌面连接客户端,选择 Show Options,然后提供以下信息:

    • 计算机:实例的公有 DNS 名称或公有 IP 地址,您可以从实例的详细信息页面获取这些信息。

    • 用户名Administrator

  6. 客户端提示输入凭证时,提供从步骤 4 中获得的已解密密码。