AWS EC2 Instance ConnectをRokcy Linuxで使えるようにする

AWS EC2 Instance Connectを使う

AWS EC2インスタンスをターミナルから見たい場合、通常はPCやMacのターミナルソフトからSSH接続して確認します。
EC2 Instance Connectはブラウザからターミナル操作が出来るので便利です。

Rocky Linuxではデフォルトでは使えない

Failed to connect to your instanceになります。
Try again laterとなっていますが、このままではいつまで待っても使えません。

EC2 Instance ConnectのPkgをインストールする

Instance Connectを最初からサポートしているAMI(Amazon Machine Image)なら何もしなくても使えます。当初はAmazon Linuxだけでしたが、拡大されてRHELやUbuntu, Max OSなども対象になっています。Rocky Linuxはデフォルトでは2025/3現在サポートしていないのでPkgをインストールします。

AWS 公式:
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/connect-linux-inst-eic.html

SSHが生きていれば接続できそうですが、EC2 Instance ConnectのPkgインストールが必要です。

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
Last metadata expiration check: 1:45:05 ago on Sun 16 Mar 2025 10:20:12 PM UTC.
Dependencies resolved.
================================================================================
Package                        Arch     Version           Repository      Size
================================================================================
Installing:
ec2-instance-connect           x86_64   2.0.0-1.rhel9     @commandline   3.8 M
ec2-instance-connect-selinux   noarch   2.0.0-1           @commandline   5.9 k
Transaction Summary
================================================================================
Install  2 Packages
Total size: 3.8 M
Installed size: 7.6 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing        :                                                        1/1
Running scriptlet: ec2-instance-connect-selinux-2.0.0-1.noarch            1/2
Installing       : ec2-instance-connect-selinux-2.0.0-1.noarch            1/2
Running scriptlet: ec2-instance-connect-selinux-2.0.0-1.noarch            1/2
Running scriptlet: ec2-instance-connect-2.0.0-1.rhel9.x86_64              2/2
Installing       : ec2-instance-connect-2.0.0-1.rhel9.x86_64                                      2/2
Running scriptlet: ec2-instance-connect-2.0.0-1.rhel9.x86_64                                      2/2
Running scriptlet: ec2-instance-connect-selinux-2.0.0-1.noarch                                    2/2
skipping the directory /sys
skipping the directory /proc
skipping the directory /mnt
skipping the directory /var/tmp
skipping the directory /home
skipping the directory /root
skipping the directory /tmp
Verifying        : ec2-instance-connect-2.0.0-1.rhel9.x86_64                                                           1/2
Verifying        : ec2-instance-connect-selinux-2.0.0-1.noarch                                                         2/2
Installed:
ec2-instance-connect-2.0.0-1.rhel9.x86_64                    ec2-instance-connect-selinux-2.0.0-1.noarch
Complete!

・サービスの起動は必要ありません。
・EC2インスタンスにパブリックIPが関連付けられている必要があります。(EC2 Instance Connect EndpointはパブリックIP不要)
・SSHトラフィックが許可されている必要があります。

細かい要件は公式資料をご確認下さい。
AWS 公式
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-linux-inst-eic.html

テスト

fromの第3,4オクテットは伏せていますが、ブラウザを使ってる端末のパブリックIPアドレスが入ります。
EC2 Instance Connectは便利なので上手く使ってAWS運用をしましょう。

TwitterFacebookLinkedInHatenaPocketCopy Link