{EC2}Linux インスタンス用 EC2 シリアルコンソール

https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-serial-console.html

インスタンスごとにサポートされるアクティブなシリアルコンソール接続は 1 つだけです。
シリアルコンソール接続は、通常、終了しない限り 1 時間続きます。
シリアルコンソールから切断した後、新しいセッションを許可するためにセッションを終了処理するには、30 秒かかります。

 

-- 1. コマンド等のインストール

-- 1.1 aws cli version 2 インストール

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

aws --version

 

-- 2. テスト用EC2インスタンス作成

aws ec2 run-instances \
--image-id ami-0404778e217f54308 \
--instance-type t3.nano \
--key-name key1 \
--tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=instance01}]' \
--instance-market-options '{"MarketType": "spot","SpotOptions": {"SpotInstanceType": "one-time"}}'

 

-- 3. シリアルコンソールへのアカウントアクセスを許可する
aws ec2 enable-serial-console-access
aws ec2 get-serial-console-access-status


-- 4. EC2 シリアルコンソールに接続する

※事前にOSユーザのパスワードを設定しておく


ssh-keygen


aws ec2-instance-connect \
send-serial-console-ssh-public-key \
--instance-id i-11111111111111111 \
--serial-port 0 \
--ssh-public-key file://~ec2-user/.ssh/id_rsa.pub


SSH パブリックキープッシュ後60秒以内に接続実行

ssh -i ~ec2-user/.ssh/id_rsa i-11111111111111111.port0@serial-console.ec2-instance-connect.ap-northeast-1.aws

エンターキーを押すとログインプロンプトが出る


シリアルコンソールを終了する場合は下記コマンドを実行
~.


-- 5. クリーンアップ


-- EC2インスタンスの削除
aws ec2 describe-instances

aws ec2 terminate-instances --instance-ids i-11111111111111111

-- シリアルコンソールへのアカウントアクセスを拒否する
aws ec2 disable-serial-console-access
aws ec2 get-serial-console-access-status