スキップしてコンテンツを表示

踏み台ホストを使用せずに、Systems Manager Session Manager のポート転送を使用して RDP 経由で EC2 インスタンスに接続する方法を教えてください。

所要時間2分
0

AWS Systems Manager の機能である Session Manager でポート転送を使用し、踏み台ホストは使用せずに、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに Remote Desktop Protocol (RDP) 経由で接続しようとしています。

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

セキュリティグループでインバウンドアクセスをブロックする場合は、Session Manager のポート転送を使用して RDP 経由でインスタンスに接続します。Session Manager のポート転送を使用するために、受信ポートを開いたり踏み台ホストを設定したりする必要はありません。

前提条件:

AWS CLI を使用してポート転送セッションを確立する

注: AWS CLI を使用して Windows インスタンスへの Session Manager のポート転送セッションを確立します。Windows の Amazon Web Services Tools for PowerShell では、Start-SSMSession コマンドレットを使用してポート転送セッションを確立することはできません。

次の手順を実行します。

  1. ローカルマシンで次のコマンドを実行し、コンピュータのポート 55678 からインスタンスのポート 3389 へのトンネルを確立します。
    aws ssm start-session --target example-instanceid --document-name AWS-StartPortForwardingSession --parameters "example-localPortNumber=55678,example-ec2instance-portNumber=3389"
    注: example と表記された値を実際の値に置き換えてください。
    接続に成功すると、次のメッセージが表示されます。
    「Starting session with SessionId: xxxxx-01234567891011abcPort 55678 opened for sessionId xxxxx-01234567891011abc
    Waiting for connections...」
  2. ローカルの RDP クライアントを使用してlocalhost:55678 に接続し、Session Manager がトラフィックをインスタンスのリモートポート 3389 に転送できるようにします。
    接続に成功すると、次のメッセージが表示されます。
    「Connection accepted for session xxx-01234567891011abc

ポート転送セッションを終了する

次の手順を実行します。

  1. RDP セッションを閉じます。
  2. AWS CLI で Ctrl + C キーを押してポート転送セッションを終了します。AWS Systems Manager を使用してもセッションを終了できます
    セッションが正常に終了すると、次のメッセージが表示されます。
    "Terminate signal received, exiting. (終了シグナルを受信しました。終了処理中)Exiting session with sessionId: xxxxx-01234567891011abc.」

接続のトラブルシューティング

ポート転送セッションが接続に失敗した場合は、表示されたエラーに応じて次のアクションを実行してください。

AccessDeniedException

セッションを開始するユーザーに、必要な Session Manager へのアクセス許可があることを確認します。

TargetNotConnected

Session Manager でターゲットノードが構成済みであり、ノードは Systems Manager Fleet Manager コンソールOnline と表示されることを確認します。

このエラーは、異なる AWS アカウントまたは AWS リージョンに置かれたマネージドノードでセッションを開始した場合にも発生します。詳細については、「マネージドノードを使用できないか、Session Manager で設定済みではない場合」を参照してください。

Session Manager プラグインが見つからない

Session Manager プラグインがローカルマシンにインストールされていることを確認します。詳細については、「AWS CLI に Session Manager プラグインをインストールする」を参照してください。

RDP クライアントが接続できない

セッションは正常に接続できるものの、RDP クライアントが接続に失敗する場合は、インスタンスのデフォルトの RDP ポートが変更されていないか確認してください。PortNumber パラメータの値を実際の値に置き換えてください。詳細については、Microsoft のウェブサイトの「RDP リスナー ポートの確認」を参照してください。

関連情報

Session Manager のトラブルシューティング

コメントはありません

関連するコンテンツ