K
S
·
·
·

【ゆるふわAWS実践】SSMでVPC内のEC2にログインしてみようぜ!

2025年12月18日

image.png

AWS Systems Manager Session Managerって名前かっこいいですよね。強そうだし。

お疲れ様です。

AWSハンズオン型の学習を進めていて、初学者にもとっつきやすい良い感じの教材があったのでせっかくなら記事にしちゃおうと思って作成してみました。

特に専門的な知識は必要なく、AWS触ったことないよ!という方でも十分に完遂できる内容となっておりますので、良ければご覧ください!

SSMセッションマネージャとは?

SSMセッションマネージャ(AWS Systems Manager Session Manager)とは、「SSHキーなしでEC2に安全にアクセスできる便利なリモート接続サービス」です。

通常のSSHアクセスと比べて何が嬉しいの?

・SSHキーが必要ない!

→キーペアの管理であったり、公開ポートを開ける必要がない(結構すごいことです)

・22番ポートを閉じることができる

→よりセキュアな通信が可能になる

・接続ログが残る

→CloudTrailで監査することができる

・ブラウザだけで操作できる

→マシンにSSHクライアントが入っていなくても良い

実践編

今回は下記のような構成を作成します。なにやら難しそうですね。

16ed10f7-df1b-405a-bb82-ed67c4bafb43.jpg

VPCの作成

良い感じにVPCを作成します。

リソースは「VPCなど」を選択してください。 名前タグはなんでも良いです!今回は「SSM」にしました。 あとは画像の通りの設定で問題ないです。

dc337314-cbac-46e9-be00-f64098253bce.png

【VPCの設定】

・AZ数は2のマルチAZ

・パブリックサブネットは0

・プライベートサブネットは2

・VPCエンドポイントは必要なし

・DNSオプションはいずれも有効化(名前解決を行うので)

0063a58c-3358-47f2-8e7a-202021b967ec.png

良い感じにできましたね。どちらでも良いので、ルートテーブルを選択します。今回はap-northeast-1aにしました。

95b40f1a-fb4b-4b5d-8e94-b8381331fd8b.png

インターネットへの通信ができないことを確認します。

エンドポイントの作成

左のサイドバーにて「エンドポイント」を選択。新規のVPCエンドポイントを作成します。

eb7fc76a-b786-46a1-922a-8023dabd1262.png

基本的な設定はそのままで問題ないですが、サービスにて「SSM」を入力し、一番上のap-northeast-1.ssmを選択、VPCは先ほど作成したVPCを選択してください。

12a20da5-b477-409b-8adc-6e2003b22c1a.png

本来、サブネットは複数選択して冗長化すべきですが、料金もかかるため今回はap-northeast-1aのみ選択しましょうか。

セキュリティグループの設定

別タブでEC2を開いて、セキュリティグループを作成します。

29b00115-b2ad-4ba1-a38e-27430c4697de.png

・セキュリティグループ名は「SSM-SG」、VPCは先ほど作成したものを選んでください。 また、インバウンドルールにはHTTPS443番ポートで通信を許可してください。(今回は0.0.0.0/0で全許可してます。脆弱ですね^_^)

作成したものをVPC側で選択してあげてください。

10d51512-935d-4222-854b-66c0c821f9cc.png

次にEC2側のエンドポイントも作成しましょう。

9c40c785-8a9e-4299-8bce-372bae02cc44.png

サービス検索窓にec2を入力し、ap-northeast-1.ec2messagesを選択してください。

430f92a2-ca6b-4596-aa55-d5b97ae14eec.png

サブネットは引き続きap-northeast-1a、セキュリティグループも先ほどと同じもので構いません。

最後にssmmessagesのエンドポイントも作成しましょう。これはSession ManagerやSSM Agentとクラウド間のメッセージ/セッションチャネル用のエンドポイントです。詳しく説明すると長くなるので割愛します。

f86f43cb-0fdc-4d49-8b4c-fd497ced04ff.png

サービスにはap-northeast-1.ssmmessagesを選択してください。

19e28282-89a4-460c-bfcc-e3db72f3d215.png

3つのエンドポイントが作成できました~!

EC2の作成

次にEC2を作成します。 設定は基本的にそのままで問題ないですが、キーペアは作成しなくて構いません。嬉しいですね。

579f4be1-73c0-4ae5-ad47-477a4ccb4bf1.png

次にネットワーク設定です。 VPC及びサブネットは先ほど作成したもので構いません。

ここでポイントですが、セッションマネージャで通信しますので、SSH22番ポートの許可も必要ありません!

なので、今回インバウンドのセキュリティグループは何も必要ありません。

アウトバウンドは先ほど許可したので何もしなくてOKです。

5b8dbf35-02ef-4a0e-a55a-e54b69e1edf2.png

58508057-2432-4367-9be9-174d6315a90a.png

SSMエンドポイントの権限設定(IAMポリシの付与)

ロールを開き、EC2ならこのポリシー使って良いよ~という風に信頼されたエンティティを選択します。

93719cc2-c78d-45a5-9343-25de1f0711cd.png

次に、許可ポリシーをアタッチします。 AmazonSSMManagedInstanceCoreというよくわからないポリシーを選択してください(マネージドインスタンス用のポリシーです)。

0db9d442-0f96-4b3e-a022-429df9122e7c.png

EC2にIAMロールを付与

先ほど作成したIAMロールをEC2に付与します。

bc316e4e-743f-4982-9162-47c7027ababd.png

設定完了!

さっそく、セッションマネージャから接続しましょう!

891cda1b-dda4-4847-a70c-1b04dee33193.png

下記の画面のようになればOKです。 このように、22番ポートを開けなくてもEC2に接続することができました。お疲れ様でした!

1c2dccd6-5e5c-4f39-b01b-8fa7c2ea49a5.png

後片付け

※絶対に行ってください!低額ではありますが、EC2を起動したままなので課金されちゃいます。

EC2を停止し、削除します。

0c777c2a-92e0-4d7e-9787-22837f6fa798.png

VPCは基本的に無料ですが、併せて削除することをおすすめします。おそらく使わないですし・・。

おわり

いかがでしたでしょうか!

AWSを普段業務で触れている方であれば、基礎中の基礎の内容だったかもしれませんが、自分のような未経験者であればなかなかつまずいてしまう箇所もあったかもしれません。

また何か優れた教材を見かけたときには記事に起こしたいと思います。 お疲れ様でした~。

Skills
Projects
Hobbies
Articles