【AWS】WindowsServerにSessionManagerを使用してアクセスする
はじめに
今回は、AWSのプライベートサブネット上に立てたWindowsServerにSessionManagerを用いてRDP接続する方法についてまとめたいと思います。
構成図
前提
- 東京リージョン(ap-northeast-1)で作業する。
- EC2インスタンスは、既に作成済み。
EC2インスタンスに設定している内容は、以下になります。
設定項目 | 設定内容 |
---|---|
サブネット | プライベートサブネットのみ設定 |
AMI | Windows_Server-2022-English-Full-Base-2023.11.15 |
セキュリティグループ | Type: HTTPS 443 Source: 対象VPCのSubnet CIDR |
※WindowsServer2022のAMIには、SSMエージェントがプリインストールされている。
設定手順
1.IAMロールの作成
①AWSコンソールにてIAMのダッシュボードに移動後、ロール > ロールを作成
の順番で選択する。
②「信頼されたエンティティを選択」の画面が表示されるので、以下のように選択する。
- 信頼されたエンティティタイプ
項目 | 設定 |
---|---|
信頼されたエンティティタイプ | AWSのサービス |
- ユースケース
項目 | 設定 |
---|---|
サービスまたはユースケース | EC2 |
ユースケース | EC2 |
設定したら、「次へ」をクリックする。
③「許可を追加」の画面が表示されるので、ポリシーAmazonSSMManagedInstanceCore
を選択して「次へ」をクリックする。
④「名前、確認、および作成」の画面が表示されるので、任意のロール名を設定し「ロールを作成」をクリックする。
今回作成するロール名:Windows-SSM-Connect
⑤IAMロールが作成されたことを確認する。
2.EC2インスタンスにIAMロールをアタッチ
①EC2ダッシュボードに移動し、EC2インスタンス一覧から対象のインスタンスにチェックを入れる。
チェックを入れた状態で、インスタンスの状態 > セキュリティ > IAMロールを変更
を選択。
②作成したIAMロールを選択した後に、「IAMロールの更新」をクリックする。
3.VPCエンドポイントの設定
①EC2ダッシュボードに移動し、EC2インスタンス一覧から対象のインスタンスを選択。
詳細画面より以下の内容を控える。
- VPC
- サブネット
- セキュリティグループ
②VPCダッシュボードへ移動後に対象VPCを選択肢、アクション > VPCの設定を編集
の順番で選択する。
以下の項目にチェックを入れて、保存する。
- DNS 解決を有効化
- DNS ホスト名を有効化
③VPCダッシュボードへ移動し、エンドポイント > エンドポイントを作成
と選択する。
④以下の最低限必要なエンドポイントを3つ作成する。
サービス名 | 説明 |
---|---|
com.amazonaws.ap-northeast-1.ssm | Session Managerの利用のために必要なエンドポイント |
com.amazonaws.ap-northeast-1.ec2messages | コマンドの送受信のために必要なエンドポイント |
com.amazonaws.ap-northeast-1.ssmmessages | クラウド内の Session Manager サービスでセッションチャネルを作成および削除するために必要なエンドポイント |
エンドポイントの作成画面で設定する内容としては、以下になります。
項目 | 設定内容 |
---|---|
エンドポイント名 | 任意 |
サービスカテゴリ | AWSのサービス |
サービス | com.amazonaws.ap-northeast-1.ssm |
VPC | EC2インスタンスが所属しているVPC |
サブネット | EC2インスタンスが所属しているプライベートサブネットのID |
セキュリティグループ | EC2インスタンスが所属しているセキュリティグループ |
こちらを以下のサービス分も実施する。
- com.amazonaws.ap-northeast-1.ec2messages
- com.amazonaws.ap-northeast-1.ssmmessages
④3つエンドポイントが作成できたことを確認
動作確認
①AWS Systems Managerのダッシュボードより、フリートマネージャーを開く。
以下のように対象のノードが実行中であることを確認する。
②対象ノードを開くとノードの詳細画面が表示される。
詳細画面より ノードアクション > 接続 > リモートデスクトップで接続
を選択。
③以下のような接続設定の画面が表示されるので、管理者アカウント名の入力やキーペアのアップロードを実施後に「Connect」をクリック。
④以下のようにWindowsServerのリモートデスクトップ画面が表示されることを確認する。
参考
Discussion