☁️

AWS Systems ManagerのセッションマネージャーでEC2に接続する SSM

2024/04/25に公開

概要

パブリックサブネットに作成したEC2インスタンスにSSMを使用して接続する方法をまとめました。

EC2インスタンスに接続しCLIで操作したいが、TeraTerm等のターミナルソフトを使用したくない方向けです。

プライベートサブネットのEC2に接続する場合は今回の手順に加えてエンドポイントを作成するか、EC2 Instance Connectを使用する方法があります。

https://dev.classmethod.jp/articles/tsnote-private-ec2-ssm-vpc-endpoint/

https://dev.classmethod.jp/articles/ec2-instance-connect-endpoint-private-access/

手順

IAMロールの作成

SSMによる接続にはEC2にSSMと通信する権限を与える必要があります。

IAM→ロール→[ロールを作成]

信頼されたエンティティタイプ:AWSのサービス
ユースケース:EC2(ユースケースもEC2)
[次へ]

許可ポリシー:AmazonSSMManagedInstanceCore

[次へ]

ロール名を入力したら[ロールを作成]

EC2インスタンスの起動

任意のスペックで起動しますが、以下の点に注意

SSM Agent
SSM Agentがデフォルトで入っていないインスタンスは手動インストールが必要になります。
今回はインストール済みのインスタンスでテストします。
起動するインスタンスにSSM Agentが入っているかは以下をご確認ください。

https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/sysman-manual-agent-install.html

サブネット

パブリックサブネットで起動させてください。

パブリックIPアドレス

パブリックIPアドレスの割り当てを有効化にしてください。

IAMロール

先ほど作成したIAMロールを割り当ててください。

起動時のIAMロール設定は高度な設定IAMインスタンスプロフィールからできます。

起動時に設定し忘れた場合は「アクション」→「セキュリティ」→「IAMロールを変更」で割り当て後にインスタンスを再起動させてください。

SSM接続

EC2の起動完了後に「接続」から「セッションマネージャー」タブを選ぶと接続ができます。

EC2インスタンスの起動とは別にSSM Agentの起動も必要になりますので、もし起動後すぐ接続できない場合は数分待機してみてください。

おわり

以上でパブリックサブネットに配置したEC2にSSM接続完了です。

お疲れ様でした。

Discussion