リモートデスクトップを使用した接続 - AWS Systems Manager

リモートデスクトップを使用した接続

AWS Systems Manager の一機能である Fleet Manager を使用して、リモートデスクトッププロトコル (RDP) で Windows Server 2012R2 以降のインスタンスに接続できます。NICE DCV を利用したリモートデスクトップセッションでは、ブラウザから直接インスタンスに安全に接続することができます。Fleet Manager では、ブラウザウィンドウごとに最大 4 つのインスタンスを接続できます。現在、Fleet Manager では言語入力として英語のみをサポートしています。インバウンドポートを開かずに RDP を使用して Fleet Manager でインスタンスに接続することはできますが、Fleet Manager では、現時点でデフォルトの RDP ポート 3389 を使用するオペレーティングシステムの設定のみがサポートされています。インスタンスの RDP 用のリスニングポートの値を変更した場合、Fleet Manager では接続の確立に失敗します。インスタンスに接続するときは、Windows の認証情報またはインスタンスに関連付けられた Amazon EC2 キーペア (.pem ファイル) を認証に使用できます。Amazon EC2 キーペアの詳細については、Linux インスタンス用の Amazon EC2 ユーザーガイドおよび Windows インスタンス用の Amazon EC2 ユーザーガイドにある Amazon EC2 キーペアおよび LLinux インスタンスおよびAmazon EC2 キーペアと Windows インスタンスを参照してください。

また、AWS IAM Identity Center (successor to AWS Single Sign-On) を使用して AWS Management Console に認証されている場合は、Fleet Manager は IAM Identity Center と統合されているため、追加の認証情報を入力せずにインスタンスに接続することができます。Fleet Manager は、IAM Identity Center を有効にした同じ AWS リージョン で IAM Identity Center 認証の RDP 接続をサポートします。ユーザー名は最大 16 文字まで使用可能です。IAM Identity Center 認証の RDP 接続の場合、Fleet Manager は、接続終了後も持続するローカルユーザーをインスタンス上に作成します。IAM Identity Center 認証の RDP 接続は、Microsoft Active Directory ドメインコントローラーであるノードではサポートされていません。

重要

次の重要な詳細に留意してください。

  • RDP で Fleet Manager を使用するには、インスタンスで SSM Agent のバージョン 3.0.222.0 以降が実行されている必要があります。インスタンスで実行されているバージョン番号を確認する方法については、「SSM Agent バージョン番号の確認」を参照してください。SSM Agent の手動インストールまたは自動アップグレードについては、「SSM Agentの使用」を参照してください。

  • Fleet Manager RDP 接続の最大セッション時間は 60 分です。その時間に達すると、Fleet Manager はセッションを切断します。資格情報を使用して、同じセッションに再接続できます。セッションが終了する前に [Renew session] (セッションの更新) を選択して、タイマーを再開することもできます。

  • Fleet Manager RDP 接続のアイドルセッションタイムアウトは 10 分です。その時間に達すると、Fleet Manager はセッションを切断します。資格情報を使用して、同じセッションに再接続できます。

  • Windows Server 2022 インスタンスに接続している場合、PowerShell を使用する際のキーボード機能を保証するためにバージョン 2.2.2 以降の PSReadLine をインストールする必要があることがあります。以下にサンプルコマンドを示します。

    Install-Module ` -Name PSReadLine ` -Repository PSGallery ` -MinimumVersion 2.2.2

Fleet Manager は、RDP を使って Windows インスタンスに接続するために Session Manager を使用するため、この機能を使用する前に Session Manager の前提条件を完了している必要があります。Session Manager は AWS Systems Manager の機能です。AWS アカウント および AWS リージョン のセッション設定は、RDP を使用してインスタンスに接続するときに適用されます。Session Manager を設定する詳細については、「Session Manager のセットアップ」を参照してください。

Systems Manager および Session Manager に必要な AWS Identity and Access Management (IAM) アクセス許可に加えて、コンソールへのアクセスに使用するユーザーまたはロールは、以下のアクションも許可している必要があります。

  • ssm-guiconnect:CancelConnection

  • ssm-guiconnect:GetConnection

  • ssm-guiconnect:StartConnection

Fleet Manager とともに RDP を使用したインスタンスへの接続に関する IAM ポリシーの例を次に示します。各リソースプレースホルダーの例をユーザー自身の情報に置き換えます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EC2", "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:GetPasswordData" ], "Resource": "*" }, { "Sid": "SSM", "Effect": "Allow", "Action": [ "ssm:DescribeInstanceProperties", "ssm:GetCommandInvocation", "ssm:GetInventorySchema" ], "Resource": "*" }, { "Sid": "TerminateSession", "Effect": "Allow", "Action": [ "ssm:TerminateSession" ], "Resource": "*", "Condition": { "StringLike": { "ssm:resourceTag/aws:ssmmessages:session-id": [ "${aws:userid}" ] } } }, { "Sid": "SSMStartSession", "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:*:account-id:instance/*", "arn:aws:ssm:*:account-id:managed-instance/*", "arn:aws:ssm:*::document/AWS-StartPortForwardingSession" ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } }, { "Sid": "GuiConnect", "Effect": "Allow", "Action": [ "ssm-guiconnect:CancelConnection", "ssm-guiconnect:GetConnection", "ssm-guiconnect:StartConnection" ], "Resource": "*" } ] }
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EC2", "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:GetPasswordData" ], "Resource": "*" }, { "Sid": "SSM", "Effect": "Allow", "Action": [ "ssm:DescribeInstanceProperties", "ssm:GetCommandInvocation", "ssm:GetInventorySchema" ], "Resource": "*" }, { "Sid": "SSMStartSession", "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*::document/AWS-StartPortForwardingSession" ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } }, { "Sid": "AccessTaggedInstances", "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:*:account-id:instance/*", "arn:aws:ssm:*:account-id:managed-instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag key": [ "tag value" ] } } }, { "Sid": "GuiConnect", "Effect": "Allow", "Action": [ "ssm-guiconnect:CancelConnection", "ssm-guiconnect:GetConnection", "ssm-guiconnect:StartConnection" ], "Resource": "*" } ] }
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SSO", "Effect": "Allow", "Action": [ "sso:ListDirectoryAssociations*", "identitystore:DescribeUser" ], "Resource": "*" }, { "Sid": "EC2", "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:GetPasswordData" ], "Resource": "*" }, { "Sid": "SSM", "Effect": "Allow", "Action": [ "ssm:DescribeInstanceProperties", "ssm:GetCommandInvocation", "ssm:GetInventorySchema" ], "Resource": "*" }, { "Sid": "TerminateSession", "Effect": "Allow", "Action": [ "ssm:TerminateSession" ], "Resource": "*", "Condition": { "StringLike": { "ssm:resourceTag/aws:ssmmessages:session-id": [ "${aws:userName}" ] } } }, { "Sid": "SSMStartSession", "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ssm:*:*:managed-instance/*", "arn:aws:ssm:*:*:document/AWS-StartPortForwardingSession" ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } }, { "Sid": "SSMSendCommand", "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ssm:*:*:managed-instance/*", "arn:aws:ssm:*:*:document/AWSSSO-CreateSSOUser" ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } }, { "Sid": "GuiConnect", "Effect": "Allow", "Action": [ "ssm-guiconnect:CancelConnection", "ssm-guiconnect:GetConnection", "ssm-guiconnect:StartConnection" ], "Resource": "*" } ] }

Fleet Manager で RDP を使用してインスタンスに接続するには

  1. AWS Systems Manager コンソール (https://console.aws.amazon.com/systems-manager/) を開きます。

  2. ナビゲーションペインで、[Fleet Manager] を選択します。

    -または-

    AWS Systems Manager ホームページを最初に開く場合は、メニューアイコン ( ) を選択してナビゲーションペインを開き、[Fleet Manager] を選択します。

  3. RDP を使用して接続するインスタンスの横にあるボタンを選択します。

  4. [Node actions] (ノードアクション) メニューで、[Connect with Remote Desktop] (リモートデスクトップとの接続) を選択します。

  5. 必要な [Authentication type] (認証タイプ) を選択します。[User credentials] (ユーザー認証情報) を選択する場合は、インスタンスに接続するときに使用する Windows ユーザーアカウントのユーザー名とパスワードを入力します。[Key pair] (キーペア) を選択する場合は、[Browse local machine] (ローカルマシンの参照) オプションを使用してローカルマシンを参照し、インスタンスに関連付けられた PEM キーを選択するか、[Paste key pair content] (キーペアコンテンツを貼り付ける) オプションを選択した後に空のフィールドにコンテンツをコピーして貼り付けます。

  6. [Connect] (接続) を選択します。