0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[AWS] プライベート・サブネットのEC2(RHEL 9)にSSM Session Managerで接続する手順

0
Posted at

はじめに

この記事では、AWS Systems Manager(SSM)Session Manager を使って、プライベートサブネット上のEC2インスタンス(RHEL)に接続するまでの手順を説明します。

SSM Session Managerを使うと、SSHポートを開けずにEC2インスタンスへ安全に接続できます。踏み台サーバー(Bastion Host)も不要なため、セキュリティ面で優れた接続方法です。

この記事では稼働確認を目的としてAWSコンソールから手動で構築しています。


システム構成

前提環境: AWS VPC, EC2 (RHEL 9)

今回構築する環境の全体像です。
プライベートサブネット内のインスタンスからSSMエンドポイント、および外部(NAT Gateway経由)への通信経路を確保しています。

  • EC2はプライベートサブネットに配置します
  • SSMとの通信は VPCエンドポイント(3つ) 経由で行います
  • EC2からのアウトバウンドは NATゲートウェイ → インターネットゲートウェイ 経由で外部と通信します
  • インバウンドのSSH(22番ポート)は不要です

EC2(RHEL)インスタンス 作成

AWSコンソールから「インスタンスを起動」を選択します。

1.png

項目 設定値
OS Red Hat Enterprise Linux 9(RHEL9)
インスタンスタイプ t3.medium
  • キーペア、ネットワーク、ストレージ設定

2.png

項目 設定値
SSHキーペア 事前に登録済みのものを選択
VPC 事前作成済みのVPCを選択(構成図参照)
セキュリティグループ 事前作成済みのものを選択(後述)
ストレージ 50GB

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

2-1.png

方向 プロトコル ポート 用途
アウトバウンド TCP 443 SSMエンドポイントおよびインターネットへの通信

インバウンドのSSH(22番)ポートを開ける必要がないため、セキュリティリスクを大幅に下げられます。


IAM ロール設定

AmazonSSMManagedInstanceCore ポリシーを含むIAMロールを設定(アタッチ)します。

3.png

別途、AmazonSSMManagedInstanceCore ポリシーがアタッチされているロールを事前に作成しています。

3-1.png

ユーザーデータの設定(パスワード設定)

インスタンス起動時に実行される ユーザーデータ を使って、root および ec2-user のパスワードを設定します。

4.png

設定したパスワードは、次のステップの コンソールログイン で使用します。

ユーザーデータとは、EC2インスタンスの初回起動時に自動で実行されるスクリプトです。OSの初期設定に便利です。


インスタンス接続 (コンソール・ログイン)

まずはAWSコンソールの「EC2シリアルコンソール」機能を使って、インスタンスに接続できるか確認します。

1.png

コンソールが開きます。

2.png

ログインできました。

3.png

SSM Agent のインストール

コンソール・ログインした状態で、SSM Agentをインストールします。

RHEL9の場合、SSM AgentはAMIにプリインストールされていないため、手動インストールが必要です。

# SSM Agentのダウンロードとインストール
sudo yum install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm

# ステータス確認
sudo systemctl status amazon-ssm-agent
# → Active: active (running) と表示されれば正常
実行ログ
$ sudo yum install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
Updating Subscription Management repositories.y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
Unable to read consumer identity

This system is not registered with an entitlement server. You can use "rhc" or "subscription-manager" to register.

Last metadata expiration check: 0:00:17 ago on Tue 03 Mar 2026 04:13:51 AM UTC.
amazon-ssm-agent.rpm                            9.6 MB/s |  25 MB     00:02    
Dependencies resolved.
================================================================================
 Package               Arch        Version              Repository         Size
================================================================================
Installing:
 amazon-ssm-agent      x86_64      3.3.3797.0-1         @commandline       25 M

Transaction Summary
================================================================================
Install  1 Package

Total size: 25 M
Installed size: 114 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Running scriptlet: amazon-ssm-agent-3.3.3797.0-1.x86_64                   1/1 
  Preparing        :                                                        1/1 
  Running scriptlet: amazon-ssm-agent-3.3.3797.0-1.x86_64                   1/1 
  Installing       : amazon-ssm-agent-3.3.3797.0-1.x86_64                   1/1 
  Running scriptlet: amazon-ssm-agent-3.3.3797.0-1.x86_64                   1/1 
[  629.028953] systemd-rc-local-generator[4447]: /etc/rc.d/rc.local is not marked executable, skipping.
[  629.372476] systemd-rc-local-generator[4488]: /etc/rc.d/rc.local is not marked executable, skipping.
Created symlink /etc/systemd/system/multi-user.target.wants/amazon-ssm-agent.service → /etc/systemd/system/amazon-ssm-agent.service.

[  629.856770] systemd-rc-local-generator[4529]: /etc/rc.d/rc.local is not marked executable, skipping.
  Verifying        : amazon-ssm-agent-3.3.3797.0-1.x86_64                   1/1 
Installed products updated.

Installed:
  amazon-ssm-agent-3.3.3797.0-1.x86_64                                          

Complete!
[ec2-user@ip-10-x-x-x-x ~]$ 2026/03/03 04:14:18Z: Amazon SSM Agent v3.3.3797.0 is running
2026/03/03 04:14:18Z: OsProductName: Red Hat Enterprise Linux
2026/03/03 04:14:18Z: OsVersion: 9.6

ここで SSM 接続がオンラインになりました。

対象のインスタンス - 接続の画面

5.png


Session Manager による接続確認

SSM Agentのインストール後、AWSコンソール上でインスタンスのステータスが 「オンライン」 に変わります。

  • 確認方法: EC2コンソール > 対象インスタンスを選択 > 「接続」 > 「SSM Session Manager」でオンライン・Connected になっていること

6.png

接続を押すと、コンソールが開きます。

SSM接続.png

無事ログインできました。


まとめ

ステップ 内容
1 EC2インスタンス(RHEL9, t3.medium)を作成
2 セキュリティグループでアウトバウンド443のみ許可
3 IAMロール(AmazonSSMManagedInstanceCore)をアタッチ
4 ユーザーデータでパスワードを設定
5 コンソールログインで動作確認
6 SSM Agentをインストール
7 SSM Session Managerで接続成功

SSHポートを一切開けずに安全に接続できる SSM Session Manager は、プライベートサブネットのEC2管理に便利な接続方法です。

以上です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?