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運用をしましょう。
リンク