前書き
やること
AWSで、セッションマネージャーとフリートマネージャーを使用して、EC2に接続してみます。
その際の手順を記載します。なお、EC2はWindowsを使用し、プライベートサブネットに配置されている状態とします。
セッションマネージャーとフリートマネージャーとは
Systems ManagerというAWSサービスの中の機能のひとつです。Systems Managerは、AWSで運用タスクを自動化したり、インフラストラクチャを表示したり制御することができるAWSサービスです。
セッションマネージャー(Session Manager)とフリートマネージャー(Fleet Manager)を使用すると、SSHやリモートデスクトップ(RDP)を使用せず、AWSの中からEC2に接続することができます。
これにより、SSHやRDPのポートをセキュリティグループで開ける必要がなくなり、セキュリティが高まります。
セッションマネージャーではEC2にCLI接続ができます。
フリートマネージャーではEC2にGUI接続ができます。
環境
図解
今回作成する環境を図にすると、以下のようになります。
EC2はプライベートサブネットに配置するため、VPCエンドポイントを作成して、セッションマネージャーまたはフリートマネージャーでEC2に接続します。(後述します)
コンポーネント
ネットワーク関連
PrivateLinkを使用してEC2インスタンスに接続するため、パブリックサブネットは使用しません。
名前 | CIDR |
VPC | 10.0.0.0/16 |
プライベートサブネット | 10.0.2.0/24 |
エンドポイント関連
PrivateLinkを経由で、セッションマネージャー及びフリートマネージャーを使用してEC2に接続するには、以下のエンドポイントが必要となります。
名前(任意) | サービス名 | 備考 |
ep-ssm | com.amazonaws.ap-northeast-1.ssm | プライベートサブネットに紐付け。セキュリティグループ「sg_endpoint_for_ssm」をアタッチ。 |
ep-ssmmessage | com.amazonaws.ap-northeast-1.ssmmessages | プライベートサブネットに紐付け。セキュリティグループ「sg_endpoint_for_ssm」をアタッチ。 |
ep-ec2messages | com.amazonaws.ap-northeast-1.ec2messages | プライベートサブネットに紐付け。セキュリティグループ「sg_endpoint_for_ssm」をアタッチ。 |
セキュリティグループ
セッションマネージャー(フリートマネージャー)でEC2に接続するためには、EC2からHTTPS(443)ポートへのアウトバウンドが許可されている必要があります。EC2にアタッチするセキュリティグループで443へのアウトバウンドを許可します。
また、今回はPrivateLink(VPCエンドポイント)経由で接続するため、VPCエンドポイントにアタッチするセキュリティグループには、443ポートのインバウンドを許可します。(EC2から443への接続があるため)
名前(任意) | インバウンドルール | アウトバウンドルール | 備考 |
sg_ec2_00 | 全許可 | 「sg_endpoint_for_ssm」へのHTTPS(443)を許可。 | EC2にアタッチ。 |
sg_endpoint_for_ssm | 「sg_ec2_00」からのHTTPS(443)を許可 | 全許可 | 3つのVPCエンドポイントにアタッチ。 |
IAMロール
セッションマネージャー及びフリートマネージャーを使用するためには、EC2に「AmazonSSMManagedInstanceCore」のIAMポリシーをアタッチする必要があります。
ロール名(任意) | 備考 |
SSMInstanceProfile | ポリシー「AmazonSSMManagedInstanceCore」を付けてEC2にアタッチ。 |
EC2
EC2にはWindowsを使用します。CLI接続とGUI接続の両方を試したいので。
名前(任意) | 備考 |
TestWindows |
|
接続してみる
セッションマネージャー
Systems Managerのコンソールに移動して、「セッションマネージャー」をクリックします。次に「セッションの開始」ボタンを押すと、セッションマネージャーで管理できるインスタンスが表示されるので、チェックを入れて「セッションを開始する」をクリックします。
CLIで接続することができ、コマンドプロンプトのような画面で操作ができます。
フリートマネージャー
Systems Managerのメニューから「フリートマネージャー」をクリックすると、フリートマネージャーで接続できるインスタンスが表示されます。
チェックを入れて、「ノードアクション」のプルダウンから、「リモートデスクトップ(RDP)との接続」をクリックします。
今回は「キーペア」で接続します。EC2インスタンス作成時に指定したキーを選択します。
キーを選択したら、「Connect」ボタンをクリックします。
接続できました。赤枠のボタンをクリックすれば、全画面で操作できます。
参考情報
Systems Manager を使用してインターネットアクセスなしでプライベート EC2 インスタンスを管理できるように、VPC エンドポイントを作成するにはどうすればよいですか?
ステップ 6: (オプション) AWS PrivateLink を使用して Session Manager の VPC エンドポイントを設定する
コメント