はじめに
この記事では、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コンソールから「インスタンスを起動」を選択します。
| 項目 | 設定値 |
|---|---|
| OS | Red Hat Enterprise Linux 9(RHEL9) |
| インスタンスタイプ | t3.medium |
- キーペア、ネットワーク、ストレージ設定
| 項目 | 設定値 |
|---|---|
| SSHキーペア | 事前に登録済みのものを選択 |
| VPC | 事前作成済みのVPCを選択(構成図参照) |
| セキュリティグループ | 事前作成済みのものを選択(後述) |
| ストレージ | 50GB |
セキュリティグループの設定
| 方向 | プロトコル | ポート | 用途 |
|---|---|---|---|
| アウトバウンド | TCP | 443 | SSMエンドポイントおよびインターネットへの通信 |
インバウンドのSSH(22番)ポートを開ける必要がないため、セキュリティリスクを大幅に下げられます。
IAM ロール設定
AmazonSSMManagedInstanceCore ポリシーを含むIAMロールを設定(アタッチ)します。
別途、AmazonSSMManagedInstanceCore ポリシーがアタッチされているロールを事前に作成しています。
ユーザーデータの設定(パスワード設定)
インスタンス起動時に実行される ユーザーデータ を使って、root および ec2-user のパスワードを設定します。
設定したパスワードは、次のステップの コンソールログイン で使用します。
ユーザーデータとは、EC2インスタンスの初回起動時に自動で実行されるスクリプトです。OSの初期設定に便利です。
インスタンス接続 (コンソール・ログイン)
まずはAWSコンソールの「EC2シリアルコンソール」機能を使って、インスタンスに接続できるか確認します。
コンソールが開きます。
ログインできました。
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 接続がオンラインになりました。
対象のインスタンス - 接続の画面
Session Manager による接続確認
SSM Agentのインストール後、AWSコンソール上でインスタンスのステータスが 「オンライン」 に変わります。
- 確認方法: EC2コンソール > 対象インスタンスを選択 > 「接続」 > 「SSM Session Manager」でオンライン・Connected になっていること
接続を押すと、コンソールが開きます。
無事ログインできました。
まとめ
| ステップ | 内容 |
|---|---|
| 1 | EC2インスタンス(RHEL9, t3.medium)を作成 |
| 2 | セキュリティグループでアウトバウンド443のみ許可 |
| 3 | IAMロール(AmazonSSMManagedInstanceCore)をアタッチ |
| 4 | ユーザーデータでパスワードを設定 |
| 5 | コンソールログインで動作確認 |
| 6 | SSM Agentをインストール |
| 7 | SSM Session Managerで接続成功 |
SSHポートを一切開けずに安全に接続できる SSM Session Manager は、プライベートサブネットのEC2管理に便利な接続方法です。
以上です。











